Spring Boot 提供了一种简单的方式来设置 Session 的过期时间,可以使用 server.servlet.session.timeout 属性来设置 Session 的超时时间,单位为秒。默认情况下,Session 的超时时间为30分钟。
可以在 application.properties 文件中添加以下配置来设置 Session 的过期时间为60分钟:
ini
复制代码
server.servlet.session.timeout=3600
如果您正在使用 YAML 格式的配置文件,可以使用以下配置:
yaml
复制代码
server:
servlet:
session:
timeout: 3600
除了在配置文件中设置 Session 超时时间之外,您还可以在代码中使用以下方式设置 Session 超时时间:
java
复制代码
@Configuration
public class SessionConfig {
@Bean
public HttpSessionIdResolver httpSessionIdResolver() {
DefaultCookieSerializer cookieSerializer = new DefaultCookieSerializer();
cookieSerializer.setCookieMaxAge(3600); // 设置 Session 超时时间为 1 小时
cookieSerializer.setCookieName("JSESSIONID");
cookieSerializer.setCookiePath("/");
CookieHttpSessionIdResolver resolver = new CookieHttpSessionIdResolver();
resolver.setCookieSerializer(cookieSerializer);
return resolver;
}
}
这里使用了 CookieHttpSessionIdResolver 来处理 Session ID,并使用 DefaultCookieSerializer 来设置 Cookie 的过期时间。
以上是设置 Spring Boot Session 过期时间的几种方式,希望对您有所帮助。