解答
在Tomcat6中,有3种方法可以设置Servlet的session的过期时间。
操作方法:
方法一:
在Tomcat目录下的conf/web.xml文件里面,找到“<session-config>”下的“<session-timeout>”,修改该值就可以了(单位:分钟)。
<session-config>
<session-timeout>20</session-timeout>
</session-config>
方法二:
修改项目下的WEB-INF/web.xml文件如下(单位:分钟)
<web-app>
...
<session-config>
<session-timeout>20</session-timeout>
</session-config>
</web-app>
方法三,在Servlet里面获取HttpServletSession的实例,并且用“setMaxInactiveInterval()”方法来设置(单位:秒)
session.setMaxInactiveInterval(5); // 设置session的有效时间为5s
提示:
网上有很多教程说修改conf/server.xml文件里面的“”的属性“defaultSessionTimeOut”的值可以设置session的过期时间,但是实际上Tomcat6已经没有“defaultSessionTimeOut”这个属性了,所以以下方法是错误的。
<Context path="/test" docBase="/test"
defaultSessionTimeOut="3600" isWARExpanded="true"
isWARValidated="false" isInvokerEnabled="true"
isWorkDirPersistent="false"/>