sql >> Database teknologi >  >> NoSQL >> Redis

Spring RedisTemplate :Serialiser flere modelklasser til JSON. Skal du bruge flere RedisTemplates?

GenericJackson2JsonRedisSerializer burde gøre jobbet

    @Bean
    public RedisTemplate<String, Object> redisTemplate() {
        RedisTemplate<String, Object> redisTemplate = new RedisTemplate<String, Object>();
        redisTemplate.setConnectionFactory(jedisConnectionFactory());
        redisTemplate.setKeySerializer(new StringRedisSerializer());                                           
        redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
        return redisTemplate;
    }

Dette tilføjer @Klasse egenskab til JSON for at forstå typen, hvilket hjælper Jackson med at deserialisere, så det er ikke nødvendigt eksplicit at kortlægge modellen på konfigurationsklassen.

"{\"@class\":\"com.prnv.model.WhitePaper\",\"title\":\"Hey\",\"author\":{\"@class\":\"com.prnv.model.Author\",\"name\":\"Hello\"},\"description\":\"Description\"}"

I tjenesten kan du cache modellen ved hjælp af

    @Cacheable(value = "whitePaper", key = "#title")
    public WhitePaper findWhitePaperByTitle(String title) 
    {
        WhitePaper whitePaper = repository.findByTitle(title);
        return whitePaper;
    }

Tjek denne artikel:http://blog.pranavek.com/2016/12/25/integrating-redis-with-spring-application



  1. Sådan gør du:Brug HBase Bulk Loading, og hvorfor

  2. Tornado-fejl:[Errno 24] Fejl ved for mange åbne filer

  3. Hvordan kan jeg liste alle samlinger i MongoDB-skallen?

  4. Håndtering af langvarige operationer i MongoDB