上篇文章中我们简单介绍了下Spring session的集成。但有小伙伴问怎么设置超时时间呢。
正常情况下我们只需要在配置文件中写一行配置就够了。
spring.session.timeout=30m #小伙伴们详细可以看SessionProperties.class
但是假如上面的配置不生效,要怎么去配置这个超时时间呢,很简单,有个注解。
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.TYPE})
@Documented
@Import({RedisHttpSessionConfiguration.class})
@Configuration
public @interface EnableRedisHttpSession {
//超时时间 默认为1800s
int maxInactiveIntervalInSeconds() default 1800;
//redis中的存储结构
String redisNamespace() default "spring:session";
//ON_SAVE(表示在response commit前刷新缓存),IMMEDIATE(表示只要有更新,就刷新缓存)
RedisFlushMode redisFlushMode() default RedisFlushMode.ON_SAVE;
//设置redis的清空任务
String cleanupCron() default "0 * * * * *";
}
所以,此时只需要在启动类上注解@EnableRedisHttpSession(maxInactiveIntervalInSeconds=60)
即可。