jsp怎么实现关闭网页自动退出登录状态???

如题所述

  这个只要判断页面的状态,如果是关闭,直接销毁session即可。

  在默认情况下,session对象在关闭浏览器后并不是立刻被销毁,因此,为了考虑系统的安全性,在用户退出时,需要即刻清除session对象,防止他人盗用session对象中的信息。
  清除session对象内容的主要方法如下:
  (1)、removeAttribute()方法。该方法是用来删除session对象中保存的指定属性信息。
  例如:session.setAttribute("name", "iverson");session.removeAttribute("name");
  (2)、invalidate()方法。该方法可以清除session对象中的所有信息。
  例如:session.invalidate().
  通常情况下,关闭浏览器后,session信息需要等到session对象失效后才能清除,如果需要实现关闭浏览器后即可清除session信息,请尝试用以下方法。
  <body onbeforeunload="window.location='logout.jsp'">
  logout.jsp页面中,可以这么做:<% HttpSession session = request.getSession(); session.invalidate(); %>
  现如今,基于MVC架构模式的框架,很多。所以,上述代码,根据所选的MVC框架不同,直接与jsp页面进行分离。
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-11-22
代码我这里不说了,大概的思路给你说下,估计你看了就差不多明白了!
你问的这个问题,对jsp而言几乎不是问题,你在登陆前可以把用户的登录信息放在session中,这样用户一旦登陆进来只要不“退出”,首先你得做“退出”也就是将session销毁,如果你没有做session的话,用户登录以后一旦关闭浏览器,即IE也就是你说的网页,session也将会自动销毁。另外,将登陆信息放在session中还有其他好处,比如可以控制有效时间,可以在web.xml文件中进行配置给session设置默认有效时间,如果你不陪着一般默认为30分钟。关于session的配置我这里就不详细介绍了,你可以百度一下。
大概就这些了,仅供参考!本回答被提问者采纳
第2个回答  2015-10-19
关闭WEB服务器网页,seesion自动消失
第3个回答  2009-09-21
目前还没看到有很好的办法哦。
不过我自己认为关闭窗口时触发事件传值给后台等出是可以的。
相似回答