国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

怎樣在Cookie中存儲(chǔ)中文?

2023-05-17 10:23 作者:云和數(shù)據(jù)何老師  | 我要投稿


Cookie不能存儲(chǔ)中文,但是如果有這方面的需求,這個(gè)時(shí)候該如何解決呢?

這個(gè)時(shí)候,我們可以使用之前學(xué)過的一個(gè)知識(shí)點(diǎn)叫URL編碼,所以如果需要存儲(chǔ)中文,就需要進(jìn)行轉(zhuǎn)碼,具體的實(shí)現(xiàn)思路為:

1.在AServlet中對(duì)中文進(jìn)行URL編碼,采用URLEncoder.encode(),將編碼后的值存入Cookie中

2.在BServlet中獲取Cookie中的值,獲取的值為URL編碼后的值

3.將獲取的值在進(jìn)行URL解碼,采用URLDecoder.decode(),就可以獲取到對(duì)應(yīng)的中文值

(1)在AServlet中對(duì)中文進(jìn)行URL編碼

@WebServlet("/aServlet")public class AServlet extends HttpServlet { ? ?@Override ? ?protected void doGet(HttpServletRequest request, HttpServletResponse sponse) throws ServletException, IOException { ? ? ? ?//發(fā)送Cookie ? ? ? ?String value = "張三"; ? ? ? ?//對(duì)中文進(jìn)行URL編碼 ? ? ? ?value = URLEncoder.encode(value, "UTF-8"); ? ? ? ?System.out.println("存儲(chǔ)數(shù)據(jù):" + value); ? ? ? ?//將編碼后的值存入Cookie中 ? ? ? ?Cookie cookie = new Cookie("username", value); ? ? ? ?//設(shè)置存活時(shí)間 ,1周 7天 ? ? ? ?cookie.setMaxAge(60 * 60 * 24 * 7); ? ? ? ?//2. 發(fā)送Cookie,response ? ? ? ?response.addCookie(cookie); ? ?} ? ?@Override ? ?protected void doPost(HttpServletRequest request, HttpServletResponse ponse) throws ServletException, IOException { ? ? ? ?this.doGet(request, response); ? ?}}

(2)在BServlet中獲取值,并對(duì)值進(jìn)行解碼。

@WebServlet("/bServlet")public class BServlet extends HttpServlet { ? ?@Override ? ?protected void doGet(HttpServletRequest request, HttpServletResponsesponse) throws ServletException, IOException { ? ? ?//獲取Cookie ? ? ?//1. 獲取Cookie數(shù)組 ? ? ?Cookie[] cookies = request.getCookies(); ? ? ?//2. 遍歷數(shù)組 ? ? ?for (Cookie cookie : cookies) { ? ? ? ? ?//3. 獲取數(shù)據(jù) ? ? ? ? ?String name = cookie.getName(); ? ? ? ? ?if("username".equals(name)){ ? ? ? ? ? ? ?String value = cookie.getValue();//獲取的是URL編碼后的值%BC%A0%E4%B8%89 ? ? ? ? ? ? ?//URL解碼 ? ? ? ? ? ? ?value = URLDecoder.decode(value,"UTF-8"); ? ? ? ? ? ? ?System.out.println(name+":"+value);//value解碼后為 張三 ? ? ? ? ? ? ?break; ? ? ? ? ?} ? ? ?} ?} ?@Override ?protected void doPost(HttpServletRequest request, HttpServletResponseresponse) throws ServletException, IOException { ? ? ? this.doGet(request, response); ?}}

至此,我們就可以將中文存入Cookie中進(jìn)行使用。


怎樣在Cookie中存儲(chǔ)中文?的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
新乡市| 阿拉善左旗| 上蔡县| 孙吴县| 弥勒县| 仙桃市| 广东省| 北海市| 宁陕县| 隆昌县| 焦作市| 汨罗市| 荣成市| 鸡东县| 东城区| 鲁甸县| 林州市| 边坝县| 文登市| 苍溪县| 梅河口市| 桃园市| 张掖市| 子洲县| 阳谷县| 稷山县| 广汉市| 准格尔旗| 比如县| 留坝县| 凤台县| 南郑县| 嘉义市| 汤阴县| 江达县| 谢通门县| 吴江市| 桐梓县| 托克逊县| 三明市| 沙坪坝区|