当一个用户打开一个动态网页时,服务器会为新用户分配session,并且触发HttpSessionListener接口中的sessionCreated()事件,但是在用户销毁时却有两种不同的方式来触发SessionDestroyed()事件。
方法一:调用HttpSession接口中的invalidate()方法,让一个session失效。
方法二:超过了配置的session超时时间,session的超时时间可以直接在项目的web.xml中配置。
范例:配置session的超时时间
<session-config>
<session-timeout>5 </session-timeout>
</session-config>
以上将一个session的超时时间配置成5分钟,如果一个用户在5分钟后没有和服务器进行任何的交互操作的话,那么服务器会认为此用户已经离开,会自动将其注销。如果没有在项目中配置超时时间,则tomcat中默认的超时时间为30分钟。