9.session的生命周期

1.创建

当客户端第一次访问某个jsp或者Servlet的时候,服务器会为当前会话创建一个SessionId,每次客户端向服务端发送请求的时候,都会将此SessionId携带过去,服务端会对此SessionId进行校验。

2.活动

1)某次会话中通过超链接打开的新页面属于同一次会话。

2)只要当前会话页面没有全部关闭,重新打开新的浏览器窗口访问同一个项目资源时属于同一次会话。

3)除非本次会话的所有页面都关闭后再重新访问某个jsp或者servlet将会创建新的会话

4)注意:原有会话还存在,只是旧的sessionId仍然存在于服务端,只不过再没有客户端会携带它然后交与服务器校验,只有在过期的时候才会消除。

3.销毁

1)调用session.invalidate()方法

2)session过期(超时)

设置方法:

①session.setMaxInactiveInterval(time)单位是秒

②在web.xml里面设置

默认为30分钟,单位是分钟

3)服务器重新启动

可以查看tomcat的后台管理

可以看到两个SessionId但是第一次是没用的了,当前会话是第二个,但是第一个还是存在

原文地址:https://www.cnblogs.com/caimuqing/p/5760401.html