Ok, så jag fick det på egen hand, jag gjorde några ändringar i sessionskonfigurationsklassen och initierade den genom att utöka AbstractHttpSessionApplicationInitializer
@EnableRedisHttpSession
public class SessionConfig {
@Bean
public LettuceConnectionFactory connectionFactory() {
return new LettuceConnectionFactory();
}
}
Genom att utöka AbstractHttpSessionApplicationInitializer
, säkerställer att Spring Bean med namnet springSessionRepositoryFilter
är registrerad hos vår Servlet Container för varje förfrågan. För mer information se detta
public class SessionConfigInitializer extends AbstractHttpSessionApplicationInitializer {
public SessionConfigInitializer() {
super(SessionConfig.class);
}
}
Efter detta när jag tittade i redis-servern kan jag se något liknande detta
127.0.0.1:6379> keys '*'
1) "spring:session:expirations:1597497540000"
2) "spring:session:index:org.springframework.session.FindByIndexNameSessionRepository.PRINCIPAL_NAME_INDEX_NAME:admin"
3) "spring:session:sessions:expires:dc2172eb-2282-4600-9cd3-7f5d9bbb62b8"
4) "spring:session:sessions:dc2172eb-2282-4600-9cd3-7f5d9bbb62b8"
127.0.0.1:6379>
Den andra aspekten är från redis-servern, när du väl har ställt in din session, beroende på vilket värde du ställer in behöver du för att hämta det. Redis stöder sex typer string, list, set, zset, hash and stream
. I mitt fall var det hash så för att se värdet blir kommandot HGETALL <key>