国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計 > 正文

會話管理之cookie

2019-11-10 19:45:35
字體:
供稿:網(wǎng)友

cookie保存在瀏覽器客戶端

session保存在服務(wù)器端

 Cookie的API

                   Cookie類:保存會話數(shù)據(jù)

                             1)創(chuàng)建Cookie對象,用于保存會話數(shù)據(jù)

                                                        new Cookie(java.lang.String name,java.lang.String value)

                            2)設(shè)置Cookie對象

                                                        void setPath(java.lang.String uri)  設(shè)置cookie有效路徑

                                                        voidsetMaxAge(int expiry)     設(shè)置cookie的有效時長

                                                        voidsetValue(java.lang.String newValue)  設(shè)置cookie的值

                            3)發(fā)送Cookie數(shù)據(jù)到瀏覽器保存

                                                        response.addCookie(cookie);

                             4)接收瀏覽器發(fā)送的Cookie數(shù)據(jù)

                                                        Cookie[] request.getCookies()

       Cookie的原理

                            1)服務(wù)器端創(chuàng)建Cookie數(shù)據(jù),然后通過set-cookie的響應(yīng)頭把cookie數(shù)據(jù)發(fā)送給瀏覽器保存

                                            響應(yīng)頭:例如: set-cookie: name=eric

                           2)瀏覽器得到服務(wù)器發(fā)送cookie數(shù)據(jù),保存在瀏覽器目錄中。

                           3)瀏覽器在下次訪問服務(wù)器時,會帶著cookie數(shù)據(jù)訪問服務(wù)器。通過cookie的請求頭把cookie數(shù)據(jù)發(fā)送給服務(wù)器端

                                         請求頭:例如: cookie: name=eric

                          4)服務(wù)器可以接受瀏覽器發(fā)送的cookie數(shù)據(jù)

                                          request.getCookies();      

public void doGet(HttpServletRequest request, HttpServletResponse response)			throws ServletException, IOException {		//1,創(chuàng)建cookie對象,保存會話數(shù)據(jù)			//如果要發(fā)送中文,必須先使用URLEncoder進(jìn)行加密				String n = URLEncoder.encode("張三","utf-8");			Cookie c = new Cookie("name", "zdh");			Cookie c1 = new Cookie("email", "11mqzdh2013@163.com");			//設(shè)置有效路徑,默認(rèn)情況下,設(shè)置當(dāng)前項目的根目錄下			//c.setPath("/day11");						/*設(shè)置cookie的有效時長			 *  正整數(shù): 表示超過了正整數(shù)的數(shù)值的時間,cookie就會丟失!!(cookie保存瀏覽器的緩存																				目錄)單位:秒				負(fù)整數(shù): 表示如果瀏覽器關(guān)閉了,cookie就會丟失!(cookie保存瀏覽器內(nèi)存) (默認(rèn)情況)				 0      :  表示刪除同名的cookie				 */			//c.setMaxAge(10);//10秒后cookie消失			c.setMaxAge(-1);	//關(guān)閉瀏覽器cookie消失。也是默認(rèn)情況			c1.setMaxAge(50);		//2,把cookie數(shù)據(jù)發(fā)送給瀏覽器,通過響應(yīng)頭攜帶cookie數(shù)據(jù)給瀏覽器(set-cookie)				//response.setHeader("set-cookie", "name=zzz");			//簡化版本			response.addCookie(c);			response.addCookie(c1);		//3,瀏覽器在下次訪問的時候攜帶了cookie數(shù)據(jù),通過請求頭發(fā)送給服務(wù)器(cookie)		//4,瀏覽器獲取瀏覽器發(fā)送的cookie數(shù)據(jù),//			String name = request.getHeader("cookie");//			System.out.PRintln(name);			Cookie[] cookie = request.getCookies();			if(cookie!=null){				for(Cookie ck:cookie){					String name = ck.getName();					String value = ck.getValue();					System.out.println(name+"="+value);				}			}else{                                                                                                				System.out.println("沒有cookie 信息!!");			}	}

      

需要注意:                          

  1)設(shè)置cookie有效路徑: setPath(uri) 。如果cookie在有效路徑下,那么瀏覽器在下次訪問該有效路徑時就會帶著cookie數(shù)據(jù)到服務(wù)器。

2)設(shè)置cookie的有效時長: setMaxAge(整數(shù))

                       正整數(shù):cookie數(shù)據(jù)保存在瀏覽器的緩存目錄中(硬盤中)。例如10。10秒之后就cookie 就會丟失。(從最后一次訪問cookie開始計算)

                       負(fù)整數(shù): cookie數(shù)據(jù)保存在瀏覽器的內(nèi)存中,瀏覽器關(guān)閉cookie數(shù)據(jù)就會丟失。

                       零:  刪除同名的cookie

       3)可以同時往瀏覽器發(fā)送多個cookie數(shù)據(jù),必須是字符串類型的。瀏覽器一般只允許存放300個Cookie,每個站點最多存放20個Cookie,每個Cookie的大小限制為4KB。


上一篇:二叉樹

下一篇:nyoj1204 魔法少女 線性DP

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 临邑县| 尼玛县| 个旧市| 洛扎县| 垦利县| 盐池县| 淮安市| 赣州市| 原平市| 东阿县| 德州市| 龙里县| 福州市| 涟源市| 安阳县| 深水埗区| 且末县| 宣汉县| 天祝| 淮北市| 南木林县| 莎车县| 舟山市| 渭源县| 邢台市| 临夏县| 莲花县| 齐河县| 凤阳县| 尼木县| 阜阳市| 托克托县| 临夏市| 临海市| 黄梅县| 石台县| 海伦市| 桃园市| 尤溪县| 年辖:市辖区| 安图县|