[봄 부팅] 봄 부팅 버전 CacheManager 구성을 2.x으로

봄 부팅 1.X RedisCacheManager 구성

@Bean
 공개 CacheManager cacheManager (RedisTemplate redisTemplate) { 
    RedisCacheManager cacheManager = 새로운 RedisCacheManager (redisTemplate); 
    cacheManager.setDefaultExpiration ( 60 ); 
    지도 <문자열, 롱> expiresMap = 새로운 HashMap의 <> (); 
    expiresMap.put ( "제품", 5L ); 
    cacheManager.setExpires (expiresMap); 
    반환 cacheManager을;
}

봄 부팅 2.X RedisCacheManager 구성

  / ** 
     * SpringBoot 구성 버전 2.x 
     * 
     * @param의 redisConnectionFactory 
     * @return 
     * / 
    @Bean 
    공개 CacheManager redisCacheManager (RedisConnectionFactory redisConnectionFactory) { 
        RedisSerializer <문자열> = redisSerializer 새로운 새 StringRedisSerializer (); 
        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = 새로운 새 Jackson2JsonRedisSerializer (개체. 클래스 );
         //은   쿼리 캐시 변환 예외 문제 해결 
        ObjectMapper OM = 새 새 ) (ObjectMapper를;
        om.setVisibility (PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY); 
        om.enableDefaultTyping (ObjectMapper.DefaultTyping.NON_FINAL); 
        jackson2JsonRedisSerializer.setObjectMapper (OM); 
        CacheKeyPrefix keyPrefix = 새로운 CacheKeyPrefix () { 
            @Override 
            공공 문자열 연산 (문자열 cacheName가) {
                 반환 cacheName + ":" ; 
            } 
        }; 
        RedisCacheConfiguration 구성 = RedisCacheConfiguration.defaultCacheConfig () 
          //失效时间 .entryTtl (Duration.ofMinutes (
3 )) .serializeKeysWith (RedisSerializationContext.SerializationPair.fromSerializer (redisSerializer)) .serializeValuesWith (RedisSerializationContext.SerializationPair.fromSerializer (jackson2JsonRedisSerializer)) .disableCachingNullValues (); 반환 RedisCacheManager.builder (redisConnectionFactory) .cacheDefaults (설정) ) (.build을; }

 

추천

출처www.cnblogs.com/EveningWind/p/11617271.html