添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

一、问题:
版本是SpringBoot 2.1.9

内嵌Tomcat 管理Session 默认时长1800s。当前版本配置sever.servlet.session.timeout 参数来管理session 失效时长,本地项目有生效,但是Jenkins 构建后测试环境仍然是1800s。哪位巨巨能解答下???

# session 时长单位s
server:
  servlet:
    session:
      timeout: 12h
server.servlet.session.timeout 参数对于SpringBoot 内嵌的Tomcat 生效。本地开发环境走的内嵌Tomcat;
测试环境使用的是WAR 包,部署在外部Tomcat 中,该参数对外部Tomcat 不生效。

三、解决方案

方式二:可以直接改Tomcat 配置,一般不推荐,除非Tomcat 只服务于这一个应用程序。
Tomcat 的conf 下web.xml 中的

<Context path="/test" docBase="/test" defaultSessionTimeOut="43200" isWARExpanded="true" isWARValidated="false" isInvokerEnabled="true" isWorkDirPersistent="false"/> 

方式三:在程序中设置session 失效时长,比如在用户登录成功后设置。
此处我使用的是该方式。

/*12h*/
session.setMaxInactiveInterval(43200);