使用redisTemplate.boundValueOps Set 数据时出现乱码Key及Value
可能存在两个原因 第一个就是 Key 没有被序列化
解决方案 配置一个 Config 类 转载自 CSDN文章
@Configuration
public class redisTemplateConfig {
@Bean
public RedisTemplate<Object, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {
RedisTemplate<Object, Object> redisTemplate = new RedisTemplate();
redisTemplate.setConnectionFactory(redisConnectionFactory);
RedisSerializer stringSerializer = new StringRedisSerializer();
redisTemplate.setKeySerializer(stringSerializer);
redisTemplate.setValueSerializer(stringSerializer);
redisTemplate.setHashKeySerializer(stringSerializer);
redisTemplate.setHashValueSerializer(stringSerializer);
return redisTemplate;
}
}
Value不符合标准 这是一个小错误 希望不要再中招了
// 错误代码
redisTemplate.boundValueOps("shop:" + code + ":info").set(JSON.toJSON(shop));
// 正确代码
redisTemplate.boundValueOps("shop:" + code + ":info").set(JSON.toJSON(shop).toString());
版权声明:本文为qq_43721701原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。