⭐准备工作:
- 确保Redis服务已启动
- idea开发环境
⭐Redis整合步骤:
1.pom文件引入依赖
2.yml文件配置连接信息
3.修改Redis序列化方式
4.注入RedisTemplate 使用
小知识:
Spring整合的Redis可以将Object对象自动序列化成字符串,如果我们想存储中文的话,要改序列化的方式为UTF-8,springdataredis默认的序列化方式我们是看不懂的。
1.pom文件引入依赖
<!-- redis起步依赖-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- redis连接池-->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
2.yml文件配置连接信息
spring:
data:
redis:
host:
port: 6379
password:
lettuce:
pool:
max-active: 8 # 最大连接数
max-idle: 8 # 最大空闲连接
min-idle: 8 # 最小空闲连接
max-wait: 100ms # 等待时长
3.修改Redis序列化方式
创建Redis的配置类
注意:
如果你使用的SpringMVC自带Jackson依赖,无需再次引入
<!--Jackson依赖-->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory connectionFactory){
// 创建redistemplate对象
RedisTemplate<String, Object> template = new RedisTemplate<>();
// 设置连接工厂
template.setConnectionFactory(connectionFactory);
// 创建JSON序列化工具
GenericJackson2JsonRedisSerializer jsonRedisSerializer = new GenericJackson2JsonRedisSerializer();
// 设置Key的序列化
template.setKeySerializer(RedisSerializer.string());
template.setHashKeySerializer(RedisSerializer.string());
// 设置Value的序列化
template.setValueSerializer(jsonRedisSerializer);
template.setHashValueSerializer(jsonRedisSerializer);
// 返回
return template;
}
}
4.注入RedisTemplate 使用
@Autowired
RedisTemplate<String, Object> redisTemplate;
@Test
void contextLoads() {
ValueOperations opsForValue = redisTemplate.opsForValue();
opsForValue.set("name", "潘茨");
String name = (String) opsForValue.get("name");
System.out.println(name);
}
在客户端查看是否添加成功