Cookie的存活时间
1. 默认情况下,cookie数据保存到内存里,当浏览器关闭后,Cookie数据被销毁
2. 持久化存储:
setMaxAge(int seconds)
1. 正数:将Cookie数据写到硬盘的文件中,持久化存储。并指定cookie存活时间,时间到后,cookie文件自动失效。
2. 负数:默认值,即关闭浏览器后,cookie即失效
3. 零:删除cookie信息
setMaxAge为正数时的情况如下:
| 重启浏览器 | 不关闭浏览器 | |
| cookie时间未到 | 能访问cookie | 能访问cookie |
| cookie时间到 | 不能访问cookie | 能访问cookie |
代码如下:
第一个servlet【比如是CookieDemo01】中的代码如下:
import javax.servlet.http.Cookie;
//--------省略若干代码-----------
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//1.创建Cookie对象,绑定数据【name是"msg",value是"hello"】
Cookie c = new Cookie("msg", "hello");
//2.设置Cookie存活时间
c.setMaxAge(300);//(1).将Cookie持久化到硬盘,300秒后会自动删除
//c.setMaxAge(-1);//(2).默认值,一次浏览器会话
//c.setMaxAge(0);//(3).删除Cookie
//3.发送Cookie对象【只有发送Cookie的浏览器可以获取Cookie】
response.addCookie(c);
}
//--------省略若干代码-----------
第二个servlet【比如是CookieDemo02】中的代码如下:
import javax.servlet.http.Cookie;
//--------省略若干代码-----------
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
//3.获取Cookie
Cookie[] cs = request.getCookies();
//4.遍历Cookies
if(cs!=null){
for(Cookie c:cs){
String name = c.getName();
String value = c.getValue();
System.out.println(name+":"+value);
}
}
}
//--------省略若干代码-----------
验证:
打开Tomcat服务器,先运行第一个servlet【创建Cookie,声明Cookie生命周期,发送Cookie】,再运行第二个servlet【获取并遍历Cookie】,发现控制台上输出Cookie的name和value【即msg:hello】。
代码说明:
第一个servlet中:
(1).如果【c.setMaxAge(300)】,cookie会持久化到硬盘300秒,在这300秒内,关闭浏览器后再打开浏览器,也能访问到cookie。如果一直不关闭浏览器,300秒后也能访问。
(2).如果【c.setMaxAge(-1)】,只要浏览器不关闭,cookie不会失效。
(3).如果【c.setMaxAge(0)】,删除cookie信息。
说明:
日期:2019-03-07 08:39:31
Cookie的存活时间的更多相关文章
- 设置Cookie最大存活时间
Cookie和Session都是由Tomcat自动创建的对象,Cookie的默认最大存活时间是 -1 ,即当浏览器关闭时Cookie就消失了:Session的默认最大存活时间是30分钟. 使用Sess ...
- 采用Asp.Net的Forms身份验证时,持久Cookie的过期时间会自动扩展
原文:http://www.cnblogs.com/sanshi/archive/2012/06/22/2558476.html 若是持久Cookie,Cookie的有效期Expiration属性有当 ...
- 采用Asp.Net的Forms身份验证时,非持久Cookie的过期时间会自动扩展
问题描述 之前没有使用Forms身份验证时,如果在登陆过程中把HttpOnly的Cookie过期时间设为半个小时,总会收到很多用户的抱怨,说登陆一会就过期了. 所以总是会把Cookie过期时间设的长一 ...
- 设置cookie的保存时间 下一篇
设置cookie的保存时间,通过cookie的expires性质指定一个终止时间就可以了.也就是说,你在设置cookie的时候,你的cookie字串要像下面这样组合: var d= new Date( ...
- 怎样设置cookie的到期时间
1. 使用Cookie的: Expires 属性. 它可以设置cookie的过期时间. 下面的代码表示id这条cookie的过期时间是2015年10月21日早上7点28分; Set-Cookie: i ...
- rabbitmq设置队列消息存活时间
public static final int ALIVETIME = 600000; public static final String QUEUE = "hnyz_gs_queue&q ...
- SpringCloudStream学习(四)TTL(存活时间)Dead Letter Exchanges(死信交换机)
TTL(Time-To-Live and Expiration): RabbitMQ既能对队列设置TTL也能对消息设置TTL,消息TTL可以应用于单个队列.一组队列或应用于逐个消息. 如何给消息设置T ...
- key存活时间和五个类型通用的一些指令操作
一.设置key的存活时间 1.失效后 ttl 是 -2,get返回 null : 2.不设置存活时候 ttl 返回是 -1: 二.查找指令和删除指令.重命名key.查看key类型 1.模糊查询 2.严 ...
- cookie+session,会话时间设定
很多Web程序中第一次登录后,在一定时间内(如2个小时)再次访问同一个Web程序时就无需再次登录,而是直接进入程序的主界面(仅限于本机). 实现这个功能关键就是服务端要识别客户的身份.而用Cookie ...
随机推荐
- python安装requests
下面是requests的安装步骤: 1.如果系统已经装了Python,把D:\python3.6.5\Scripts添加到系统的环境变量PATH后面 2.cmd下cd到这个目录下D:\Python3. ...
- shell读取mysql数据库
select_sql="select value from glpi_configs where name='version' " db_data=`mysql -h $host ...
- 基于FPGA的1553B通信模块的设计(转)
reference:http://www.21ic.com/app/eda/201808/798483.htm https://www.milstd1553.com/ [导读] 摘 要: 提出一种将F ...
- Windows----Github环境搭建
关于Github的那点事: 一.下载安装 下载地址: https://git-for-windows.github.io/ 在官方下载完后,安装到Windows Explorer integra ...
- python+appium 自动化1--启动手机京东app
出处:https://www.cnblogs.com/yoyoketang/p/6128735.html 前言: 环境搭建好了.接下来先体验下如何启动app--1.首先获取包名:2.然后获取launc ...
- Ansible 任务计时
在 github 发现一个 Ansible 任务计时插件“ansible-profile”,安装这个插件后会显示 ansible-playbook 执行每一个任务所花费的时间.Github 地址: h ...
- Django App(六) Customing Admin Form
这一篇主要是呼应第二篇时留下来的一个问题,就是如何自定义默认app admin下的Form 1.绑定数据实体 通过第二篇的努力,已经完成了数据实体到数据库的映射,可以将界面的更改保存到数据库,我们建 ...
- 网络编程并发 多进程 进程池,互斥锁,信号量,IO模型
进程:程序正在执行的过程,就是一个正在执行的任务,而负责执行任务的就是cpu 操作系统:操作系统就是一个协调.管理和控制计算机硬件资源和软件资源的控制程序. 操作系统的作用: 1:隐藏丑陋复杂的硬件接 ...
- Logging常用handlers的使用
一.StreamHandler 流handler——包含在logging模块中的三个handler之一. 能够将日志信息输出到sys.stdout, sys.stderr 或者类文件对象(更确切点,就 ...
- 《DSP using MATLAB》Problem 7.13
代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...