Java中设置session的超时(失效)时间
程序员文章站
2022-03-15 11:43:53
...
Java中设置session的超时(失效)时间
一般系统登录后,都会设置一个当前session失效的时间,以确保在用户长时间不与服务器交互时,自动退出登录,销毁session。
方式一:在web容器中设置(例:Tomcat)
在tomcat的安装路径下的/conf/web.xml文件中:
<!-- 时间单位:分钟 -->
<session-config>
<session-timeout>30</session-timeout>
</session-config>
Tomcat中默认session的超时时间为30分钟,可以根据需要进行修改,-1或0是不限制session的失效时间
注意:这个session设置的时间是根据服务器来计算的,而不是客户端。所以如果在调试程序,应该是修改服务器端时间来测试,而不是客户端。
方式二:在项目的web.xml中进行设置
<!-- 时间单位:分钟 -->
<session-config>
<session-timeout>15</session-timeout>
</session-config>
方式三:在java代码中进行修改
//以秒为单位,即在没有活动30分钟后,session将失效
session.setMaxInactiveInterval(30*60);
提示:三种方式优先等级:1 < 2 < 3,推荐使用第三种方式!