Cookie機制是采用用戶端保持Http狀态資訊的方案。
Cookie是在浏覽器通路web伺服器的某個資源的時候,由web伺服器在http響應消息頭中附帶給浏覽器的一個小文本檔案。
一旦web伺服器儲存了某個Cookie,那麼它在以後每次通路該web伺服器的時候都會在http請求頭中将這個cookie回傳給web伺服器。
底層實作原理:web伺服器通過http響應消息中增加Set_cookie響應頭字段将cookie資訊發送給伺服器,浏覽器則通過在http請求消息中增加Cookie請求頭字段将cookie回傳給web伺服器。
一個cookie隻能辨別一種資訊,它至少含有一個辨別該資訊的名稱Name和設定值Value。
一個web站點可以給一個web浏覽器發送多個cookie,一個web浏覽器也可以存儲多個web站點提供cookie。
浏覽器一般隻允許存放300個cookie,每個站點最多存放20個cookie,每個cookie的大小限制為4kb。

第一次響應傳回cookie代碼:
在浏覽器裡面觀察資訊,響應裡面有伺服器端我剛剛設定的cookie資訊:
再次通路會将伺服器端傳回的cookie攜帶上:
1 設定最大生存時間,以秒為機關:
cookie.setMaxAge(60);
2 指定目錄中所有頁面以及該目錄子目錄的所有頁面可見,cookie路徑必須包含設定cookie的servlet,例如/catalog,它使得cookie對于伺服器上的/catalog下的所有目錄都是可見的。
cookie.setPath("/test/test2"):
3 建立cookie:
response.addCookie(cookie);
4 讀取cookie:
Cookie[] cookies = request.getCookies();
5 删除cookie:
Cookie cookie = new Cookie("key", null);
cookie.setMaxAge(0);
6 修改cookie:
// 建立一個已存在key的Cookie對象
Cookie cookie = new Cookie("cookie-name", null);
// 修改Cookie的值
cookie.setValue("this is new value");
// 通知浏覽器儲存修改
Cookie對象的.setMaxAge( ) 方法控制Cookie的存活。
Cookie的預設存活時間(會話)setMaxAge為負數,表示會話級。也就是說浏覽器一旦關閉,Cookie就會被删除。
Cookie的删除 setMaxAge 零表示馬上删除。表示浏覽器一收到響應,馬上就會删除Cookie。
Cookie的儲存 setMaxAge 正數表示多少秒之後删除
當我們建立一個新Cookie的時候。Cookie的預設存活時間為會話時間。也就是隻要一關浏覽器。cookie就會過期,被删除。
當我們調用setMaxAge( 0 ) 為零的時候。表示浏覽器一收到響應後,就馬上删除Cookie
當我們調用setMaxAge( 正頁 ) 的時候,表示Cookie将在多少秒後過期。
谷歌浏覽器,直接按下F12功能鍵,會彈出調試工具,選擇Resource-----Cookies----localhost檢視localhost域名下的cookie。
如果是火狐浏覽器。同樣按下F12功能鍵,彈出調試工具(一定要記住啟用所有視窗)。選擇Cookies選擇卡
如下内容參考網絡上面的資源:https://www.oschina.net/code/snippet_2001568_48014
添加cookie:
修改cookie:
擷取指定名稱的cookie:
删除指定的cookie:
java實作cookie增删改查:
通過SpringMvc來進行增删改查: