Cookie是实现会话管理的一种方式。
Cookie概念:
- cookie是WEB服务器发送给客户端的一段文本信息,它保存在客户端硬盘上。
- 对于发送给同一个服务器的后续请求,客户端会自动加载本地的cookie。
会话管理概念:
- 会话是一个客户端连续不断地与服务器进行请求与响应的一系列交互。
- 多次请求间建立关系的方式也称为会话管理。
Cookie实现:
//创建Cookie对象
Cookie c = new Cookie("name","value");
//设置Cookie的存活期限,单位为秒
c.setMaxAge(60*60); //3600秒
//将Cookie放入到Http响应中
response.addCookie(c);
Cookie的基本方法:
- getMaxAge()/setMaxAge() 读取/设置Cookie到期时间(秒);
- getName() 读取Cookie名称,setName()不存在;
- getValue()/setValue() 读取/设置Cookie关联的值;
Cookie的优点:
- 可配置Cookie到期时间,数据可长期保存;
- 不需要服务器资源,数据保存在客户端;
- 简单性,基于文本的Key-Value对;
Cookie的缺点:
- Cookie大小收到限制,要小于Session;
- 用户可禁用客户端接收Cookie的功能;
- 潜在的安全风险;