美好的一天!
我正在开发一个系统。 基于Java的Web应用程序。 根据系统要求,当发现用户在30分钟内处于空闲状态时,必须终止会话。
最简单的方法是什么?
我读过使用HttpSession的setMaxInactiveInterval()但不知道如何实现它。
提前致谢。
答案 0 :(得分:4)
有两种方法:
1)web.xml
<web-app ...>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
</web-app>
您可以在此处指定超时(以分钟为单位)。
2)在Servlet中
HttpSession session = request.getSession();
session.setMaxInactiveInterval(30*60);
在此处指定会话超时(以秒为单位)。
注意:web.xml
和setMaxInactiveInterval
之间的重要区别。在web.xml
中,您可以在几分钟内指定它,如setMaxInactiveInterval
中所示,您可以在几秒钟内指定它,因此如果您想在几分钟内将其转换为分钟数。
答案 1 :(得分:0)
您可以在web.xml中设置:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
答案 2 :(得分:0)
如果您使用tomcat作为web容器来执行servlet或jsp应用程序,那么请在[Tomcat_home]/conf/web.xml
中找到以下部分:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
超时值以分钟为单位指定。 修改文件后重启Tomcat,以便更改生效。
OR
您可以将会话到期时间更改为tomcat管理器页面(http://localhost:8080/manager/html
)下的特定项目,如下图所示。默认超时为30分钟。您可以在几分钟内提供价值。