更新时间:2016年08月17日16时14分 来源:传智播客JAVA培训学院 浏览次数:
通过以上对cookie生存时间的了解,下面通过一个案例来直观的体会cookie的生存时间设置对cookie的影响,具体如下:
(1)创建一个web项目,Example19,在该应用下的WebRoot目录下新建一个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中,创建了一个cookie,但是并没有设置cookie的生存时间,通过以上对cookie生存时间的讲解,该cookie会在浏览器关闭的时候被销毁。
(2)将Example19发布到Tomcat服务器中,然后启动服务器,谷歌浏览器查看cookie比较方便,我们在谷歌浏览器端地址栏上访问:http://localhost:8080/Example19/cookieSet.jsp,浏览器显示结果如图1-1所示:
图1-1 浏览器显示结果
(3)查看谷歌浏览器中的cookie,点击图1-1所示的红色标注的图标,在下拉选项中选择【设置】,进入图1-2所示界面:
图1-2 查看cookie
(4)点击图1-2中的【内容设置】选项,进入图1-3所示界面:
图1-3 查看cookie
(5)点击图1-3中的【所有Cookie和网站数据…】按钮,进入图1-4所示界面:
图1-4 查看cookie
(6)点击图1-4所示的【cookie1】按钮,进入图1-5所示界面:
图1-5 cookie信息
由图1-5可知,名字为cookie1的cookie的过期时间为浏览会话结束时,即表示浏览器关闭,cookie被删除。
(7)关闭浏览器,再次打开浏览器,查看cookie1是否还存在,如图1-6所示:
图1-6 cookie信息
由图1-6所示,浏览器中已经不存在名为cookie1的cookie。
(8)对例1-1中的代码进行修改,如例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的生存时间设置为1小时。
(9)在浏览器端再次访问cookieSet.jsp页面,查看浏览器中cookie1的保存时间,如图1-7所示:
图1-7 cookie信息
由图1-7可知,cookie1的保存时间是10:08:12,过期时间是:11:08:12,其生存时间正好是1个小时。
cookie1在浏览器端的存活时间是1小时,浏览器关闭后再打开,cookie1仍然存在,现在我们通过代码来将cookie1从浏览器端删除。
(10)在Example19应用的WebRoot目录下,新建一个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中,再次新建一个名字为cookie1的cookie,并且设置其过期时间为0,表示浏览器立即删除当前及之前保存的名字为cookie1的cookie。
(11)重新启动服务器,在浏览器端地址栏上输入:http://localhost:8080/Example19/cookieGet.jsp,然后查看浏览器端的cookie1是否还存在,如图1-8所示:
图1-8 查看cookie
由图1-8可知,浏览器端的cookie1已经不存在了,它原本的生存时间是1小时,经过cookieGet.jsp页面中代码的设置,没有到过期时间就被浏览器删除了。
本文版权归传智播客Java培训学院所有,欢迎转载,转载请注明作者出处。谢谢!
作者:传智播客Java培训学院
首发:http://www.itcast.cn/javaee