redis与springboot整合使用
一、项目配置与使用
1、引入的依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.5.5</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
<!-- 连接池依赖 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-pool2</artifactId>
</dependency>
<!-- jackson 用于redis配置序列化使用,因为没引入mvc模块,所以手动引入了下 -->
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
2、配置文件
spring:
redis:
host: 127.0.0.1
port: 6379
database: 0
#password: 123456
lettuce:
pool:
max-idle: 8
min-idle: 8
max-active: 8
max-wait: 100
3、编写配置类与实体类,实体类必须实现序列化接口并有get set方法,否则会序列化出错,序列化器有俩选择,它们的区别在于存储时的值
GenericJackson2JsonRedisSerializer :存储的是{“@class”:“com.xp.User”,“name”:“徐鹏”,“age”:24},该对象可以反序列化为我们的实体类对象,缺点就是体积大了一些。
Jackson2JsonRedisSerializer :存储的是{“name”:“徐鹏”,“age”:24},推荐用这种,使用时转为JSON对象使用
@Configuration
public class RedisConfig {
@Bean
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) {
RedisTemplate<String, Object> template = new RedisTemplate<String