session是将信息保存在服务器,有失效时间,浏览器拿到ID,通过cookie的方式保存在浏览器端,关闭浏览器sessionID失效
Cookie将信息保存在浏览器,Cookie不是很安全
Cookie中不能存储中文,必须把中文转码才能存储
Cookie存储的内容最大为3k,是键值对形式存在
str = URLEncoder.encode(中文."UTF-8")
创建一个Cookie的过程
1.new 一个cookie对象
2.给这个对象划定他的有效范围路径
3.给这个对象设定有效期
4.服务器响应中添加这个cookie
创建一个Session的过程
1.可以通过请求,request.getSession()获得一个session
2.把指定的内容保存到session中
session.setAttribute("name",user);
在JSP中可以通过<%=application.getAttribute("name")%>

page 只在当前页面有效
request ,一次请求内有效,可以多个页面
session ,当前一次会话有效,一个用户的多个请求
application, servletContext 上下文应用,一个应用程序内有效
session失效的三种时机
1.手动注销 session
session.invalidate();
2.超过session的最大有效时间
1.更改配置文件,服务器中的所有session的有效实现
<session-config>
<session-timeout>50</session-timeout> 50是分钟
</session-config>
2.更改当前项目中的session的有效时间,在web.xml中
<session-config>
<session-timeout>50</session-timeout> 50是分钟
</session-config>
3.当前项目的当前session时间
session.setMaxInactiveInterval(10);当前页面当前seesion的有效事件
3.关闭浏览器,并没有注销 session,只是没有了浏览器中的 JsessionID 被清空