目录
# 为什么选择Spring Boot与Redis整合?
将Spring Boot与Redis整合可以充分利用两者的优势,简化开发并提升应用性能。具体好处包括:
- 缓存支持:使用Redis作为缓存层可以极大提高应用的响应速度和可扩展性。
- 会话管理:将用户会话存储在Redis中,可以实现分布式会话管理。
- 数据持久性:Redis的持久化功能可以确保数据的可靠性。
- 简化配置:Spring Boot的自动配置和Redis Starter可以简化配置工作。
了解了这些基础知识后,接下来将详细介绍如何在Spring Boot项目中整合Redis,包括依赖配置、连接设置、基本操作和应用案例。
1. 更新 pom.xml
确保你的项目包含了以下依赖。如果使用 Spring Initializr 已经添加了 spring-boot-starter-data-redis
,这里就无需再次添加。
<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>
</dependencies>
commons-pool2
是用于 Lettuce 连接池配置的依赖。
2. 配置application.yml
补充:
Spring Boot 1.x 和 Spring Boot 2.x 中,
spring.redis.host
用于配置 Redis 连接属性。Spring Boot 3.x 中,
spring.redis.host
已经弃用。从 Spring Boot 2.x 开始,引入了
spring.data.redis
作为配置 Redis 连接的方式,并且在 Spring Boot 3.x 中也可以使用spring.data.redis
进行配置。
在 src/main/resources
目录下,添加 Redis 连接池的配置。
application.yml
:
server:
port: 8080
spring:
redis:
host: 127.0.0.1 # 地址
port: 6379 # 端口号
database: 0 # 数据库索引(默认为0)
timeout: 1800000 # 连接超时时间(毫秒)
lettuce:
pool:
max-active: 20 # 连接池最大连接数(使用负值表示没有限制)
max-wait: -1 # 最大阻塞等待时间(负数表示没有限制)
max-idle: 5 # 连接池中最大空闲连接
min-idle: 0 # 连接池中最小空闲连接
3. 创建 Redis 配置类
在 com.lei.my_redis.config
包中创建或更新 RedisConfig