SpringBoot 3.X 整合 Redis
时间: 2025-01-04 16:11:58 浏览: 5
### Spring Boot 3.X 集成 Redis 教程
#### 1. 添加依赖项
为了使 Spring Boot 项目能够与 Redis 进行交互,需在 `pom.xml` 文件中加入如下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
```
此操作确保应用程序可以访问必要的库来连接和管理 Redis 数据存储[^2]。
#### 2. 应用程序属性配置
编辑项目的 `application.properties` 或者 `application.yml` 文件以定义 Redis 的连接参数。对于 YAML 格式的文件来说,具体的设置方式如下所示:
```yaml
spring:
redis:
host: localhost
port: 6379
password: your_password_if_any
lettuce:
pool:
max-active: 8
max-idle: 8
min-idle: 0
```
上述配置指定了主机地址、端口号以及可选的身份验证信息,并通过 Lettuce 客户端池设置了最大活动连接数等资源控制选项。
#### 3. 创建 RedisTemplate Bean
为了让开发者更方便地操作 Redis 中的数据结构,在 Java 类里声明一个名为 `RedisConfig.java` 的类用于初始化 `RedisTemplate` 实例对象:
```java
import org.springframework.context.annotation.Bean;
import org.springframework.data.redis.connection.RedisConnectionFactory;
import org.springframework.data.redis.core.StringRedisTemplate;
@Configuration
public class RedisConfig {
@Bean
public StringRedisTemplate stringRedisTemplate(RedisConnectionFactory factory){
return new StringRedisTemplate(factory);
}
}
```
这段代码创建了一个基于字符串键值对处理的模板工具实例,它允许使用者轻松执行 CRUD 操作以及其他高级功能。
#### 4. 编写业务逻辑层接口实现
接下来构建具体的服务组件来进行数据存取工作。这里给出一个简单的例子展示如何利用前面提到过的 `StringRedisTemplate` 对象完成基本的任务:
```java
@Service
@Slf4j
public class CacheService {
private final StringRedisTemplate template;
public CacheService(StringRedisTemplate template) {
this.template = template;
}
/**
* 将指定 key-value 存入缓存,默认过期时间为一天
*/
public void setCacheValue(final String key,final Object value){
try{
ValueOperations<String,Object> ops=template.opsForValue();
ops.set(key,value,Duration.ofDays(1));
log.info("成功保存至缓存:{}",key);
}catch (Exception e){
log.error("向缓存中添加数据失败",e);
}
}
/**
* 获取对应 key 下面储存的内容
*/
public Object getCacheValue(final String key){
try{
ValueOperations<String,Object> ops=template.opsForValue();
return ops.get(key);
} catch(Exception e){
log.error("读取缓存中的数据异常",e);
return null;
}
}
}
```
此类提供了两个主要的方法——一个是用来设定特定键关联的对象形式的价值;另一个则是查询给定名称下的记录是否存在及其具体内容。
---
阅读全文