sql >> Databasteknik >  >> NoSQL >> Redis

Inställning av vårsession på redis-server

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>



  1. Använder redis som cache för en mysql-databas

  2. Mongoose lösenord hashing

  3. Geospatialt stöd i MongoDB

  4. MongoDB fungerar inte. FEL:dbpath (/data/db) finns inte.