Java EE网站的默认会话超时是多少?
时间:2020-03-06 14:48:23 来源:igfitidea点击:
如果我未在我的web.xml文件中指定以下内容:
<session-config> <session-timeout>10</session-timeout> </session-config>
我的默认会话超时是多少? (我正在运行Tomcat 6.0)
解决方案
我确定这取决于容器。 Tomcat是30分钟。
如果我们使用的是Tomcat,则需要30分钟。你可以在这里读更多关于它的内容。
我们还可以使用HttpSession` setMaxInactiveInterval API在特定会话的代码中进行设置:
Specifies the time, in seconds, between client requests before the servlet container will invalidate this session. A negative time indicates the session should never timeout.
我提到这一点是为了防止超时时间不是30分钟,但我们没有指定其他值(例如,该项目中的其他开发人员使用了此API)。
另一个需要注意的事项是,该超时可能不会在会话有资格过期的确切时间触发。 Java EE服务器可能具有一个轮询线程,该线程每分钟检查一次过期的会话。我对此没有参考,但是在WebSphere 5.1时代已经看到了这种行为。
会话超时,我们可以在以下条目中提到的在web.xml文件中为该特定上下文指定
60
默认会话超时为30分钟