上篇文章中我們簡單介紹了下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)
即可。