Annotation Interface EnableRedisHttpSession
@Retention(RUNTIME)
@Target(TYPE)
@Documented
@Import(RedisHttpSessionConfiguration.class)
public @interface EnableRedisHttpSession
Add this annotation to an
@Configuration
class to expose the
SessionRepositoryFilter
as a bean named springSessionRepositoryFilter
and backed by RedisSessionRepository
. In order to leverage the annotation, a
single RedisConnectionFactory
must be provided. For example:
@Configuration(proxyBeanMethods = false) @EnableRedisHttpSession public class RedisHttpSessionConfig { @Bean public LettuceConnectionFactory redisConnectionFactory() { return new LettuceConnectionFactory(); } }More advanced configurations can extend
RedisHttpSessionConfiguration
instead.- Since:
- 1.0
- See Also:
-
Optional Element Summary
Modifier and TypeOptional ElementDescriptionFlush mode for the Redis sessions.int
The session timeout in seconds.Defines a unique namespace for keys.Save mode for the session.
-
Element Details
-
maxInactiveIntervalInSeconds
int maxInactiveIntervalInSecondsThe session timeout in seconds. By default, it is set to 1800 seconds (30 minutes). This should be a non-negative integer.- Returns:
- the seconds a session can be inactive before expiring
- Default:
- 1800
-
redisNamespace
String redisNamespaceDefines a unique namespace for keys. The value is used to isolate sessions by changing the prefix from defaultspring:session:
to<redisNamespace>:
.For example, if you had an application named "Application A" that needed to keep the sessions isolated from "Application B" you could set two different values for the applications and they could function within the same Redis instance.
- Returns:
- the unique namespace for keys
- Default:
- "spring:session"
-
flushMode
FlushMode flushModeFlush mode for the Redis sessions. The default isON_SAVE
which only updates the backing Redis whenSessionRepository.save(Session)
is invoked. In a web environment this happens just before the HTTP response is committed.Setting the value to
IMMEDIATE
will ensure that the any updates to the Session are immediately written to the Redis instance.- Returns:
- the
FlushMode
to use - Since:
- 2.2.0
- Default:
- ON_SAVE
-
saveMode
SaveMode saveModeSave mode for the session. The default isSaveMode.ON_SET_ATTRIBUTE
, which only saves changes made to session.- Returns:
- the save mode
- Since:
- 2.2.0
- Default:
- ON_SET_ATTRIBUTE
-