更新時(shí)間:2016年08月17日16時(shí)14分 來源:傳智播客JAVA培訓(xùn)學(xué)院 瀏覽次數(shù):
通過以上對cookie生存時(shí)間的了解,下面通過一個(gè)案例來直觀的體會cookie的生存時(shí)間設(shè)置對cookie的影響,具體如下:
(1)創(chuàng)建一個(gè)web項(xiàng)目,Example19,在該應(yīng)用下的WebRoot目錄下新建一個(gè)jsp文件,名稱為cookieSet.jsp,主要代碼如例1-1所示:
例1-1 cookieSet.jsp
<body>
<h1>保存cookie</h1>
<%
Cookie cookie1=new Cookie("cookie1","aaa");
response.addCookie(cookie1);
%>
</body>
例1-1中,創(chuàng)建了一個(gè)cookie,但是并沒有設(shè)置cookie的生存時(shí)間,通過以上對cookie生存時(shí)間的講解,該cookie會在瀏覽器關(guān)閉的時(shí)候被銷毀。
(2)將Example19發(fā)布到Tomcat服務(wù)器中,然后啟動(dòng)服務(wù)器,谷歌瀏覽器查看cookie比較方便,我們在谷歌瀏覽器端地址欄上訪問:http://localhost:8080/Example19/cookieSet.jsp,瀏覽器顯示結(jié)果如圖1-1所示:
圖1-1 瀏覽器顯示結(jié)果
(3)查看谷歌瀏覽器中的cookie,點(diǎn)擊圖1-1所示的紅色標(biāo)注的圖標(biāo),在下拉選項(xiàng)中選擇【設(shè)置】,進(jìn)入圖1-2所示界面:
圖1-2 查看cookie
(4)點(diǎn)擊圖1-2中的【內(nèi)容設(shè)置】選項(xiàng),進(jìn)入圖1-3所示界面:
圖1-3 查看cookie
(5)點(diǎn)擊圖1-3中的【所有Cookie和網(wǎng)站數(shù)據(jù)…】按鈕,進(jìn)入圖1-4所示界面:
圖1-4 查看cookie
(6)點(diǎn)擊圖1-4所示的【cookie1】按鈕,進(jìn)入圖1-5所示界面:
圖1-5 cookie信息
由圖1-5可知,名字為cookie1的cookie的過期時(shí)間為瀏覽會話結(jié)束時(shí),即表示瀏覽器關(guān)閉,cookie被刪除。
(7)關(guān)閉瀏覽器,再次打開瀏覽器,查看cookie1是否還存在,如圖1-6所示:
圖1-6 cookie信息
由圖1-6所示,瀏覽器中已經(jīng)不存在名為cookie1的cookie。
(8)對例1-1中的代碼進(jìn)行修改,如例1-2所示:
例1-2 cookieSet.jsp
<body>
<h1>保存cookie</h1>
<%
Cookie cookie1=new Cookie("cookie1","aaa");
cookie1.setMaxAge(60*60)
response.addCookie(cookie1);
%>
</body>
例1-2中,將cookie1的生存時(shí)間設(shè)置為1小時(shí)。
(9)在瀏覽器端再次訪問cookieSet.jsp頁面,查看瀏覽器中cookie1的保存時(shí)間,如圖1-7所示:
圖1-7 cookie信息
由圖1-7可知,cookie1的保存時(shí)間是10:08:12,過期時(shí)間是:11:08:12,其生存時(shí)間正好是1個(gè)小時(shí)。
cookie1在瀏覽器端的存活時(shí)間是1小時(shí),瀏覽器關(guān)閉后再打開,cookie1仍然存在,現(xiàn)在我們通過代碼來將cookie1從瀏覽器端刪除。
(10)在Example19應(yīng)用的WebRoot目錄下,新建一個(gè)jsp文件,名稱為cookieGet.jsp,主要代碼如例1-3所示:
例1-3 cookieGet.jsp
<body>
<h1>刪除cookie</h1>
<%
Cookie cookie=new Cookie("cookie1","aaa");
cookie.setMaxAge(0);
response.addCookie(cookie);
%>
</body>
例1-3中,再次新建一個(gè)名字為cookie1的cookie,并且設(shè)置其過期時(shí)間為0,表示瀏覽器立即刪除當(dāng)前及之前保存的名字為cookie1的cookie。
(11)重新啟動(dòng)服務(wù)器,在瀏覽器端地址欄上輸入:http://localhost:8080/Example19/cookieGet.jsp,然后查看瀏覽器端的cookie1是否還存在,如圖1-8所示:
圖1-8 查看cookie
由圖1-8可知,瀏覽器端的cookie1已經(jīng)不存在了,它原本的生存時(shí)間是1小時(shí),經(jīng)過cookieGet.jsp頁面中代碼的設(shè)置,沒有到過期時(shí)間就被瀏覽器刪除了。
本文版權(quán)歸傳智播客Java培訓(xùn)學(xué)院所有,歡迎轉(zhuǎn)載,轉(zhuǎn)載請注明作者出處。謝謝!
作者:傳智播客Java培訓(xùn)學(xué)院
首發(fā):http://xamj520.com/javaee
北京校區(qū)