Spring引导Java配置设置会话超时
如何在Spring引导应用程序中配置(嵌入式)Tomcat会话超时Spring引导Java配置设置会话超时,spring,session,spring-boot,timeout,Spring,Session,Spring Boot,Timeout,如何在Spring引导应用程序中配置(嵌入式)Tomcat会话超时 public class SessionListener implements HttpSessionListener{ @Override public void sessionCreated(HttpSessionEvent se) { se.getSession().setMaxInactiveInterval(5*60); } @Override public void sessionDestroyed(Ht
public class SessionListener implements HttpSessionListener{
@Override
public void sessionCreated(HttpSessionEvent se) {
se.getSession().setMaxInactiveInterval(5*60);
}
@Override
public void sessionDestroyed(HttpSessionEvent se) {
}}
我有一个SessionListener,但我不知道必须在哪个类中将此侦听器添加到上下文中。您应该能够在application.properties文件中设置
server.session.timeout
参考:
编辑:
在Spring Boot的更高版本中,此属性已更改为server.servlet.session.timeout
ref:
应用程序中的server.session.timeout
。属性文件现在已不推荐使用。正确的设置是:
server.servlet.session.timeout=60s
还请注意,Tomcat不允许您将超时设置为小于60秒。有关最小设置的详细信息,请参阅。- Spring Boot 1.0版:
server.session.timeout=1200
- Spring Boot 2.0版:
server.servlet.session.timeout=10m
注意:如果未指定持续时间后缀,将使用秒
#会话超时(对于spring,以秒为单位,对于tomcat服务器/容器,以分钟为单位)server.session.timeout=1
我测试了它并正在工作!事实证明,tomcat在minutesspring boot 2.0中获得了该属性move@user1553728什么?注意:在嵌入式Tomcat服务器中,它是以分钟为单位的,因此如果您设置的值小于1分钟,会话将需要等待1分钟才能过期。我正在使用spring boot 2.2.6和嵌入式tomcat 9成功使用低于60秒的会话超时@Daryl server.servlet.session.timeout=60s在我将我的spring boot(2.2.4)spring security(5.2.1)web应用程序部署到独立的tomcat(9)中时不起作用。我尝试使用minute也很有用,因为根据本文,该设置不能在代码中更新,必须通过属性文件完成,如答案所示:。来自那篇文章:“没有办法以编程方式设置全局会话超时”