你好,欢迎访问我的博客!登录
当前位置:首页 - 技术 - 正文 君子好学,自强不息!

session-timeout 不起作用是怎么回事,Java Web开发Session超时设置

2018-06-26 05:59:40技术admin44°c
A+ A-

session-timeout

做了多次测试,居然不好用,这是为什么呢,上网找了许多资料,但是都属于session的基础篇,所以狠下心来,也不找了,自己研究吧,但是无论多少次测试却都无效,没办法了,换个方法试试吧,用cookies配合下session,看看效果,这一试问题居然解决了,结果出来了,得出论证了,原来如此,下面我来说下解决方法:

在容器中设置:如在tomcat-5.0.28\conf\web.xml中设置

Tomcat默认session超时时间为30分钟,可以根据需要修改,负数或0为不限制session失效时间。

<session-config>    

        <session-timeout>30</session-timeout>    

</session-config>    

在工程的web.xml中设置

<session-config>  

      <session-timeout>15</session-timeout>  

</session-config>  

通过Java代码设置

session.setMaxInactiveInterval(30*60);//以秒为单位  

彻底解决session设置timeout不起作用、自动失效的方法

 1.优先级:Servlet中API设置 > 程序/web.xml设置 > Tomcat/conf/web.xml设置
 2.若访问服务器session超时(本次访问与上次访问时间间隔大于session最大的不活动的间隔时间)了,即上次会话结束,但服务器与客户端会产生一个新的会话,之前的session里的属性值全部丢失,产生新的sesssionId
 3.客户端与服务器一次有效会话(session没有超时),每次访问sessionId相同,若代码中设置了session.setMaxInactiveInterval()值,那么这个session的最大不活动间隔时间将被修改,并被应用为新值。
 4.Session的销毁(代表会话周期的结束):在某个请求周期内调用了Session.invalidate()方法,此请求周期结束后,session被销毁;或者是session超时后自动销毁;或者客户端关掉浏览器
 5.对于JSP,如果指定了<%@ page session="false"%>,则在JSP中无法直接访问内置的session变量,同时也不会主动创建session,因为此时JSP未自动执行request.getSession()操作获取session。

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
session-timeout 不起作用是怎么回事,Java Web开发Session超时设置

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签:

发表评论

选填

必填

必填

选填

请拖动滑块解锁
>>


  用户登录