在我的应用程序中,我正在维护会话
HttpSessionListener
public void sessionCreated(HttpSessionEvent se)
public void sessionDestroyed(HttpSessionEvent se)
Run Code Online (Sandbox Code Playgroud)
如果一个用户突然关闭浏览器,浏览器的会话应该被销毁,但它不会自动销毁.
操作系统:Linux应用程序:Jboss
我该如何维持会话
您需要了解会话是在服务器上维护的.因此,当浏览器关闭时,服务器不会被通知 - 因此它会继续在服务器上维持会话一段指定的时间.(即web.xml中配置的会话超时间隔,默认为30分钟).因此,当客户端不再访问应用程序超过30分钟时,会话将在服务器上被销毁.
如果一个用户突然关闭浏览器,浏览器的会话应该被销毁,但它不会自动销毁.
这对您的申请有何影响?
如果用户打开一个新浏览器并返回到您的站点,他将在服务器上启动一个新会话 - 而不是旧会话.除非您能够解释在浏览器关闭时使会话无效的特定需求,否则这应该适用于您的应用程序.你在sessionDestroyed()中做了什么特定的逻辑吗?