在J2EE的Web应用里,设置session超时有两种办法:
1. 在web.xml中设置:
<session-timeout>15</session-timeout>
以上设置的是session超时的时间是15分钟。
2. 在jsp/servlet中设置:
session.setMaxInactiveInterval(5);
以上设置的是session超时的时间是5秒钟。
对于容器来说,第一种设置是全局设置,这个war下的所有没有设置session.setMaxInactiveInterval都起作用,相当于global.
而第二种设置是相当于local,可以根据实际情况作出一些例外的设置。
此外:
1. session.setMaxInactiveInterval(0)会将session立刻进入invalidate状态;
2. session.setMaxInactiveInterval(-1)会将session设置为永不超时;
3. <session-timeout>0</session-timeout> 会将session设置为永不超时;
4. <session-timeout>-1</session-timeout>会将session设置为永不超时。
默认值设置:
Tomcat可以在conf/web.xml中设置,默认30分钟