session设置存活时间的三种方式

  1. 在web容器中设置(此处以tomcat为例)
    在tomcat-5.0.28confweb.xml中设置,以下是tomcat 5.0中的默认配置:
[html] view plain copy
  <!-- ==================== Default Session Configuration ================= -->  
  <!-- You can set the default session timeout (in minutes) for all newly   -->  
  <!-- created sessions by modifying the value below.    -->  
	<session-config>  
        <session-timeout>30</session-timeout>  
	</session-config>  

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

  1. 在工程的web.xml中设置
[html] view plain copy
<!-- 时间单位为分钟   -->  
<session-config>
      <session-timeout>15</session-timeout>
</session-config>
  1. 通过Java代码设置
session.setMaxInactiveInterval(30*60);//以秒为单位

三种方式优先级:1 < 2 < 3

特别:如果需要根据用户或者权限去设置sessionTimeOut时间
增加过滤器,在过滤器doFilter方法中通过request.getSession().getAttribute("userid")去得到用户然后判断用户,设置session.setMaxInactiveInterval(30); //session时间

原文地址:https://www.cnblogs.com/keyi/p/11401398.html