请编写一个名为RedisUtils的java工具类,使用RedisTemplate来操作redis
时间: 2024-03-05 17:51:42 浏览: 71
好的,以下是一个基于 RedisTemplate 的 Redis 工具类 RedisUtils 的实现,提供了一些常见的 Redis 操作方法,包括读取、写入、过期时间等。
```java
import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component;
import java.util.concurrent.TimeUnit;
@Component
public class RedisUtils {
private final RedisTemplate<String, Object> redisTemplate;
public RedisUtils(RedisTemplate<String, Object> redisTemplate) {
this.redisTemplate = redisTemplate;
}
public void set(String key, Object value) {
redisTemplate.opsForValue().set(key, value);
}
public void set(String key, Object value, long timeout, TimeUnit timeUnit) {
redisTemplate.opsForValue().set(key, value, timeout, timeUnit);
}
public Object get(String key) {
return redisTemplate.opsForValue().get(key);
}
public boolean delete(String key) {
return redisTemplate.delete(key);
}
public boolean expire(String key, long timeout, TimeUnit timeUnit) {
return redisTemplate.expire(key, timeout, timeUnit);
}
}
```
使用时,只需要通过构造函数注入 RedisTemplate 对象,然后使用 RedisUtils 提供的方法即可完成对 Redis 数据库的操作。例如:
```java
@Autowired
private RedisTemplate<String, Object> redisTemplate;
@Autowired
private RedisUtils redisUtils;
public void example() {
String key = "example_key";
String value = "example_value";
// 使用 RedisTemplate 直接写入
redisTemplate.opsForValue().set(key, value);
// 使用 RedisUtils 封装后的写入
redisUtils.set(key, value);
// 使用 RedisUtils 封装后的读取
Object result = redisUtils.get(key);
// 使用 RedisUtils 封装后的删除
boolean deleted = redisUtils.delete(key);
// 使用 RedisUtils 封装后的设置过期时间
boolean expired = redisUtils.expire(key, 5, TimeUnit.MINUTES);
}
```
阅读全文