我用的springboot版本是:
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.8.RELEASE</version>
</parent>
Redis的启动器依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
第一种方法:
在你需要调用RedisTemplate的类中引入以下代码(通过StringRedisSerializer来进行序列化)
@Autowired
private RedisTemplate redisTemplate;
//设置redis,防止key乱码
@Autowired(required = false)
public void setRedisTemplate(RedisTemplate redisTemplate) {
RedisSerializer stringSerializer = new StringRedisSerializer();
redisTemplate.setKeySerializer(stringSerializer);
redisTemplate.setValueSerializer(stringSerializer);
redisTemplate.setHashKeySerializer(stringSerializer);
redisTemplate.setHashValueSerializer(stringSerializer);
this.redisTemplate = redisTemplate;
}
第二种:
将
@Autowired
private RedisTemplate<String, String> redisTemplate;
改成
@Autowired
private StringRedisTemplate redisTemplate;