Redis
 sql >> Datenbank >  >> NoSQL >> Redis

Festlegen der Frühlingssitzung auf dem Redis-Server

Ok, also habe ich es selbst hinbekommen, ich habe einige Änderungen in der Sitzungskonfigurationsklasse vorgenommen und sie initialisiert, indem ich AbstractHttpSessionApplicationInitializer erweitert habe

@EnableRedisHttpSession
public class SessionConfig {

    @Bean
    public LettuceConnectionFactory connectionFactory() {
        return new LettuceConnectionFactory();
    }
}

Durch Erweitern von AbstractHttpSessionApplicationInitializer , stellt sicher, dass Spring Bean unter dem Namen springSessionRepositoryFilter wird für jede Anfrage bei unserem Servlet Container registriert. Weitere Informationen finden Sie hier

public class SessionConfigInitializer extends AbstractHttpSessionApplicationInitializer {

    public SessionConfigInitializer() {
        super(SessionConfig.class);
    }
}

Wenn ich danach auf den Redis-Server geschaut habe, kann ich so etwas sehen

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> 

Der andere Aspekt stammt vom Redis-Server, sobald Sie Ihre Sitzung eingerichtet haben, je nachdem, welchen Wert Sie zum Abrufen benötigen. Redis unterstützt sechs Typen string, list, set, zset, hash and stream . In meinem Fall war es Hash, um den Wert zu sehen, lautet der Befehl HGETALL <key>