Redis 报错 ERR value is not an integer or out of range
在使用 Spring Boot + Redis 的时候,使用 RedisTemplate 模板时,使用方法redisTemplate.opsForValue().increment(key, 1);做累加的时候,就会出现此种报错。还是序列化的问题,解决办法就是在项目启动类中添加如下代码@Beanpublic RedisTemplate<Object,Object> redisTempl
·
在使用 Spring Boot + Redis 的时候,使用 RedisTemplate 模板时,使用方法redisTemplate.opsForValue().increment(key, 1);
做累加的时候,就会出现此种报错。还是序列化的问题,解决办法就是在项目启动类中添加如下代码
@Bean
public RedisTemplate<Object,Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<Object,Object> redisTemplate = new RedisTemplate<>();
redisTemplate.setConnectionFactory(redisConnectionFactory);
Jackson2JsonRedisSerializer jackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer(Object.class);
//设置 value 的序列化方式为 JOSON
redisTemplate.setValueSerializer(jackson2JsonRedisSerializer);
//设置 key 的序列化方式为 String
redisTemplate.setKeySerializer(new StringRedisSerializer());
return redisTemplate;
}
没有自动导包的手动导一下就可以了,然后重新启动项目,就可以了。
更多推荐
已为社区贡献1条内容
所有评论(0)