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

Spring data tilsidesætter standard serializer igen

Du har sikkert løst det i mellemtiden, men for yderligere svarsøgende.

Ifølge forårets data redis reference:

Som standard er RedisCache og RedisTemplate konfigureret til at bruge indbygget Java-serialisering.

Fra stacktrace kan jeg se, at du faktisk bruger Redis til caching, så du skal konfigurere RedisCache og ikke RedisTemplate . RedisCache henter ikke din @Bean fordi den ikke bruger RedisTemplate internt.

Eksempel på hvordan du kan gøre det i 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. God konfigurationsfil til at overvåge eksisterende processer?

  2. Big Data Processing Engines – Hvilken skal jeg bruge?:Del 1

  3. En oversigt over databasedriftsrapportering i ClusterControl

  4. Kunne ikke oprette forbindelse til Redis på 127.0.0.1:6379:Forbindelse nægtet