配置Redis序列化方式不生效问题及解决
更新时间:2023年12月20日 09:42:59 作者: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在容器创建好了
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。


最新评论