生:开浏览器访问服务器的程序,第一次访问getSession()这个方法时创建
死:sesison30分钟没人用了(可以人工控制时间)
在web.xml中配置:
<session-config>
<session-timeout>10</session-timeout>
</session-config>
单位是:分钟
--------------------------------
request.getSession();创建session
request.getSession(false);查看session,不创建。一般用于查询操作。
-------------------------------------------------------------------------
1、第一次访问,服务器创建session,然后会以cookie的形式会写给浏览器。
2、再访问的时候,会带着cookie去找对应的session.
3、这种情况下,cookie是没有设置有效期的。
解决方案:获取sessionid,然后写给cookie.
HttpSession session=request.getSession();
String id=session.getId();
Cookie cookie=new Cookie("JSESSIONID",id);
cookie.setPath("/servletdemo");
cookie.setMaxAge(1*60*30);
response.addCookie(cookie);
session.setAttribute("name","洗衣机");