1 Cookie的作用
- 在浏览器中存放数据
- 将浏览器中存放的数据携带到服务器
2.相关的API
cookie相关API
- new Cookie(String name,String value); 创建Cookie
- response.addCookie(cookie); 把Cookie写给浏览器
- request.getCookies(); 获得所有的Cookie对象
- cookie.getName() 获得Cookie的key
- cookie.getValue() 获得Cookie的value
Cookie本质是请求头,响应头
3.cookie特点
- Cookie保存在客户端(浏览器端的)
- 第一次请求的时候, 没有Cookie的, 先由服务器写给浏览器.
- Cookie里面只能保存字符串, 大小有限制
4.Cookie的类型
- 会话级别【默认的】 浏览器关闭了就消失了
- 持久级别
setMaxAge(int 秒)
- -1 默认值
- 正整数
- 0 删除cookie 【必须路径一致】
5.cookie有效路径
cookie.setPath(String path) 建议设置成当前的项目部署路径; setPath(request.getContextPath())
6.cookie的弊端
cookie的大小(个数和自身大小)和格式(只能存字符串)有限制,默认不支持中文,解决中文办法
URLEncode.encode(value,"utf-8");//存入的时候(先通过utf-8编码)
URLDecode.decode(value,"utf-8");//取出 (通过utf-8解码)
注意:
- 判断是否第一次访问
- 取的时候 和存时候的key要一致
- 不管是哪一次访问, 都需要记录当前的时间到Cookie