Najprostszym sposobem na skonfigurowanie limitu czasu sesji podczas korzystania z repozytorium redis jest
@EnableRedisHttpSession(maxInactiveIntervalInSeconds = 60)
LUB @EnableRedissonHttpSession(maxInactiveIntervalInSeconds =1200), jeśli istnieje zależność redisson.
Sesja wygasa kiedy nie jest już dostępny w repozytorium. Timeout można skonfigurować za pomocą setDefaultMaxInactiveInterval(int)
na obu RedisOperationsSessionRepository
i MapSessionRepository
. Wartość domyślna to 30 minut .
Jeśli używasz spring boot, to od wersji 1.3 automatycznie zsynchronizuje wartość z server.session.timeout
właściwość z konfiguracji aplikacji.
Zauważ, że jedną z wad korzystania z sesji wiosennej jest to, że javax.servlet.http.HttpSessionListener
s nie są wywoływane.
Jeśli chcesz reagować na zdarzenia wygaśnięcia sesji, możesz zasubskrybować SessionDestroyedEvent
wydarzenie aplikacji wiosennej aplikacji.