1.导入Maven依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2.配置连接信息
spring:
redis:
host: 127.0.0.1
port: 6379
password:
3.新增配置类,修改序列化方式
RedisSerializer接口实现类有四种:
- JDK 序列化方式 (默认)
- String 序列化方式
- JSON 序列化方式
- XML 序列化方式
为什么要修改序列化方式?
redisTemplate 默认的序列化方式为 jdkSerializeable;StringRedisTemplate的默认序列化方式为StringRedisSerializer。
其中jdkSerializeable存储的是二进制字节码。 绝大多数情况下,不推荐使用 JdkSerializationRedisSerializer 进行序列化。主要是不方便人工排查数据。
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) {
RedisTemplate<String, Object> template = new RedisTemplate<>();
template.setConnectionFactory(redisConnectionFactory);
StringRedisSerializer stringRedisSerializer = new StringRedisSerializer();
//key 采用String的序列化方式
template.setKeySerializer(stringRedisSerializer);
//hash
template.setHashKeySerializer(stringRedisSerializer);
//value
template.setValueSerializer(stringRedisSerializer);
template.afterPropertiesSet();
return template;
}
}
4。注入RedisTemplate进行使用
@Autowired
private RedisTemplate redisTemplate;
public String testRedis() {
String cacheData = (String)redisTemplate.opsForValue().get("cacheData");
return cacheData;
}
redisTemplate常见操作:
redisTemplate.opsForValue() 操作String
redisTemplate.opsForList() 操作LIST
redisTemplate.opsForSet() 操作SET
redisTemplate.opsForHash() 操作HASH
redisTemplate.opsForZSet() 操作ZSET
参考资料
- https://www.cnblogs.com/harriets-zhang/p/14517312.html
- https://cloud.tencent.com/developer/article/1863347