我的应用程序当前将Spring Session与Redis一起用作后端。
我搜索了Spring Session 的官方文档,但使用该模块时找不到默认的会话超时。
另外,我不确定如果需要如何更改默认超时。
有人可以请教吗?
使用Redis存储库时配置会话超时的最简单方法是
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 60)
当存储库中不再有会话时,该会话将 过期 。可以同时setDefaultMaxInactiveInterval(int)在RedisOperationsSessionRepository和上配置超时MapSessionRepository。默认值为 30分钟 。
setDefaultMaxInactiveInterval(int)
RedisOperationsSessionRepository
MapSessionRepository
如果您使用的是Spring Boot,server.session.timeout则从1.3版开始,它将自动将值与应用程序配置中的属性同步。
server.session.timeout
请注意,使用spring session的缺点之一是javax.servlet.http.HttpSessionListeners不被调用。
javax.servlet.http.HttpSessionListener
如果您需要对会话到期事件做出反应,则可以订阅SessionDestroyedEventspring应用程序的应用程序事件。
SessionDestroyedEvent