Skip to content Skip to footer

设置 Session 的过期时间 三种方式

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 过期时间的几种方式,希望对您有所帮助。