Session与Cookie对比
相同:都是保存用户状态的机制,都会过期
不相同:1.session在服务器端保存用户信息,cookie在客户端保存用户信息
2.session保存的是Object类型,cookie保存的是String类型
3.session随会话的结束而将其存储的数据销毁,cookie可以长期保存在客户端
4.session保存重要信息,cookie保存不重要的信息。
Session生命周期:
创建:客户端第一次访问jsp或servlet创建一个SessionId。客户端每次请求都将SessionId带过,服务端进行验证。
活动:1.某次会话超链接
2.当前会话页面没有全部关闭
3.本次会话所有页面关闭后,再重新访问某个JSP或者Servlet将会创建新的会话。
销毁:1.调用session.invalidate()
2.过期(tomcat中设置超时)
3.服务器重启
Cookie
保存在客户端
典型应用1.判断用户是否已经登录
2.购物车的处理
作用:对特定对象的追踪
保存用户浏览记录与习惯
简化登录
安全风险:容易泄露用户的信息
创建Cookie
Cookie newCookie = new Cookie(String key,Object value);
写入Cookie
response.addCookie(newCookie);
读取Cookie
Cookie[] cookies = request.getCookies()