我知道如何更改session-timeout
中的全局tomcat8
:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
问题:如何更改超时每个应用程序路径?
就像我想将多个应用程序部署到:
/myapp/v1
/myapp/v2
/myapp/v3
/someapp
现在我希望所有/myapp/*
路径都有不同的超时。但也只能在testserver上。在生产服务器上,超时应保持为默认值tomcat 30mins。
这就是为什么我不想在应用程序本身添加web.xml
的原因,因为这会在部署新的war
时影响生产部署。
这可能吗?
如果重要:我使用spring-boot
。
答案 0 :(得分:0)
你最好的选择是在sessionhandler类中处理这个问题,类似于:
public class AppHttpSessionListener implements HttpSessionListener {
@Override
public void sessionCreated(HttpSessionEvent event) {
event.getSession().setMaxInactiveInterval(15 * 60);
}
@Override
public void sessionDestroyed(HttpSessionEvent event) {
// session destroyed
}
}
参考:http://www.groupkt.com/post/7ee95bbd/session-timeout-handling-in-java.htm
我可能错了,但我不确定你能做到这一点!