目录
【会话跟踪技术简介】
为了解决多次请求之间数据共享问题
【Cookie】
【Cookie 基本使用】
【Cookie 原理】
【Cookie 使用细节】
URL编码:
发送Cookie,进行编码:
String value = "张三";
value = URLEncoder.encode(value, "UTF-8");
Cookie cookie = new Cookie("usename",value);
获取Cookie,进行解码:
Cookie[] cookies = request.getCookies();
for (Cookie cookie : cookies) {
String value = cookie.getValue();
value = URLDecoder.decode(value, "UTF-8");
}
【Session】
【Session 基本使用】
【Session 原理】
一次会话的多次请求获取的都是同一个Session对象,从而可以共享数据。
都是同一个Session对象的原因:Session对象有一个唯一的标识id。servlet里如果创建Session对象,tomcat响应时会获取Session对象的id,自动加上Cookie响应头。响应头JESESSIONID对应的就是id。
【Session 使用细节】
浏览器关闭虽然数据不会丢失,但是获取的session不是同一个了。cookie响应头里获取的session的id也不一样。
【小结】
用户信息:需要安全性高,所以要session。
登录记住密码:需要安全性高且下一次打开浏览器需要自动填上。因为需要长期存储,所以用cookie,安全性没办法保证。
验证码:验证码就是一张图片,生成一个验证码字符串。需要安全性高,且不需要保存很久。所以用session。