• SpringBoot--redis自定义序列化配置不生效


    redis自定义序列化失效

    yml文件配置:

      redis:
        database: 0
        port: 6379
        host: localhost
        password:
        connect-timeout: 1000
        lettuce:
          pool:
            max-active: 8
            max-idle: 8
            max-wait: -1
            min-idle: 0
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    配置类如下:

    package com.eccom.asset.config;
    
    import org.springframework.cache.annotation.CacheConfig;
    import org.springframework.context.annotation.Bean;
    import org.springframework.context.annotation.Configuration;
    import org.springframework.data.redis.connection.RedisConnectionFactory;
    import org.springframework.data.redis.core.RedisTemplate;
    import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
    import org.springframework.data.redis.serializer.Jackson2JsonRedisSerializer;
    import org.springframework.data.redis.serializer.StringRedisSerializer;
    
    /**
     * @author : 一只小海猪
     * @date : 20:16 2021/11/21
     * redis配置类,实现序列化
     */
    //@Configuration //这里需要使用配置注解,如果用CacheConfig会导致扫描不到这个配置类
    @CacheConfig
    public class RedisConfig {
        @Bean
        public RedisTemplate<String,Object> redisTemplate(RedisConnectionFactory redisConnectionFactory){
            RedisTemplate<String,Object> redisTemplate =  new RedisTemplate<>();
            //key序列化
            redisTemplate.setKeySerializer(new StringRedisSerializer());
            //对象序列化
            redisTemplate.setValueSerializer(new GenericJackson2JsonRedisSerializer());
            //hash序列化
            redisTemplate.setHashKeySerializer(new StringRedisSerializer());
            redisTemplate.setHashValueSerializer(new GenericJackson2JsonRedisSerializer());
    
            //注入连接工厂
            redisTemplate.setConnectionFactory(redisConnectionFactory);
            return redisTemplate;
        }
    
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37

    这里需要使用配置注解@Configuration,如果用@CacheConfig会导致扫描不到这个配置类。
    加上或者将@CacheConfig注解改为@Configuration就好了。

  • 相关阅读:
    react antd 一些问题和要注意的地方
    React整理总结(二、组件化开发)
    为什么需要扩展标签属性?(搭建场景体会)
    购物车下单
    K8s进阶7——Sysdig、Falco、审计日志
    ES6之函数的扩展二
    如何看待程序员不写注释
    Python学习记录 异常处理
    【图像二值化】基于matlab C4.5决策树图像二值化【含Matlab源码 2225期】
    互联网大厂女工抑郁症自救指南
  • 原文地址:https://blog.csdn.net/qq_43804919/article/details/126468001