Redis

关注公众号 jb51net

关闭
首页 > 数据库 > Redis > 配置Redis序列化方式不生效

配置Redis序列化方式不生效问题及解决

作者:HiSiri666666

这篇文章主要介绍了配置Redis序列化方式不生效问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

配置Redis序列化方式不生效

今天进行redis配置没有注意redis设置序列化方式的方法名称,导致redis序列化一直不成功。

@Configuration
public class RedisConfig {
    @Bean
    public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
        RedisTemplate<Object, Object> redisTemplate = new RedisTemplate<>();
        redisTemplate.setConnectionFactory(redisConnectionFactory);
        //配置序列化规则,jdk的序列化,对象必须实现Serializer接口jackson就不需要
        Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
        //实例化
        ObjectMapper objectMapper = new ObjectMapper();
        //全部属性都能实例化
        objectMapper.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);
        jackson2JsonRedisSerializer.setObjectMapper(objectMapper);
 
 
        //设置key-value序列化规则
        redisTemplate.setKeySerializer(new StringRedisSerializer());
        redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
 
        //设置hash-value序列化规则
        redisTemplate.setHashKeySerializer(new StringRedisSerializer());
        redisTemplate.setHashValueSerializer(jackson2JsonRedisSerializer);
 
        return redisTemplate;
    }
}

redisTemplate这里的设置redisTemplate方法必须叫redisTemplate

注意

 1. 方法名不可以随便改,就叫redisTemplate,要不然配置不生效

2. RedisConnectionFactory spring boot在容器创建好了

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
阅读全文