Java應用技巧 對於 Cookie 的操作詳解

2021-04-13 11:55:55 字數 1210 閱讀 2567

1.設定cookie

cookie cookie = new cookie("key", "value");

cookie.setmaxage(60);

設定60秒生存期,如果設定為負值的話,則為瀏覽器程序cookie(記憶體中儲存),關閉瀏覽器就失效。

cookie.setpath("/test/test2");

設定cookie路徑,不設定的話為當前路徑(對於servlet來說為request.getcontextpath() + web.xml裡配置的該servlet的url-pattern路徑部分)

response.addcookie(cookie);

2.讀取cookie

該方法可以讀取當前路徑以及「直接父路徑」的所有cookie物件,如果沒有任何cookie的話,則返回null

cookie cookies = request.getcookies();

3.刪除cookie

cookie cookie = new cookie("key", null);

cookie.setmaxage(0);

cookie.setpath("/test/test2");

刪除指定路徑上的cookie,不設定該路徑,預設為刪除當前路徑cookie

response.addcookie(cookie);

4.注意:假設路徑結構如下

test/test2/test345/test555/test666

a.相同鍵名的cookie(值可以相同或不同)可以存在於不同的路徑下。

b. 刪除時,如果當前路徑下沒有鍵為"key"的cookie,則查詢全部父路徑,檢索到就執行刪除操作(每次只能刪除乙個與自己最近的父路徑cookie)

ff.必須指定與設定cookie時使用的相同路徑來刪除改cookie,而且cookie的鍵名不論大寫、小寫或大小混合都要指定路徑。

ie.鍵名小寫時,如果當前路徑為/test/test2,如果找不到再向上查詢/test、/test555、/test345,如果還找不到就查詢/ 。(/test555/test666不查詢)

鍵名大小寫混合或大寫時,不指定路徑則預設刪除當前路徑,並且不向上查詢。

c.讀取cookie時只能讀取直接父路徑的cookie。

如果當前路徑為/test/test2,要讀取的鍵為"key"。當前路徑讀取後,還要讀取/test,/test讀取後,還要讀取/

Java應用技巧 對於 Cookie 的操作詳解

1.設定cookie cookie cookie new cookie key value cookie.setmaxage 60 設定60秒生存期,如果設定為負值的話,則為瀏覽器程序cookie 記憶體中儲存 關閉瀏覽器就失效。cookie.setpath test test2 設定cookie路...

Java建立cookie和刪除cookie

寫cookie操作 cookie cooki cooki new cookie bbs 0001 string.valueof num 使用者id cooki.setmaxage 60 60 24 365 cookie時間 cooki.setpath 根據個人的不用,在不同功能的路徑下建立 resp...

java對於價格的計算

乘 public double getmultiply double x,double y 除public double getdivide double x,double y 例子 根據應收金額dcost,和dcash實收現金計算找零多少 param dcash 現金 param dcost 金額...