Redis
 sql >> база данни >  >> NoSQL >> Redis

Spring data redis отменя сериализатора по подразбиране

Вероятно сте го решили междувременно, но за други търсещи отговори.

Според пролетните данни препратка към redis:

По подразбиране RedisCache и RedisTemplate са конфигурирани да използват собствена сериализация на Java.

От stacktrace виждам, че всъщност използвате Redis за кеширане, така че трябва да конфигурирате RedisCache а не RedisTemplate . RedisCache не взема вашия @Bean защото не използва RedisTemplate вътрешно.

Пример как можете да го направите в Java:

    @EnableCaching
    @Configuration
    public class CacheConfig {

        @Bean
        @Primary
        public RedisCacheConfiguration defaultCacheConfig(ObjectMapper objectMapper) {
            return RedisCacheConfiguration.defaultCacheConfig()
                .serializeKeysWith(SerializationPair.fromSerializer(new StringRedisSerializer()))
                .serializeValuesWith(SerializationPair.fromSerializer(new GenericJackson2JsonRedisSerializer(objectMapper)));
        }

    }



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Фатална грешка:Неуловено изключение „RedisException“ със съобщение „Redis сървърът изчезна“

  2. Redis:Показва размера/размера на базата данни за ключовете

  3. Как да настроите срока на валидност на хеш ключа в redis според съществуването на ключа

  4. Целина се опитва да се свърже с грешен брокер

  5. DigitalOcean pod има необвързани незабавни PersistentVolumeClaims