springboot redis过期时间设置时效
时间: 2024-10-25 09:18:25 浏览: 18
在Spring Boot应用中配置Redis过期时间通常涉及到`RedisTemplate`或`StringRedisTemplate`的使用。当存储键值对时,你可以通过设置`expire()`或`PEXPIRE`命令来指定缓存的存活时间。例如:
```java
@Autowired
private StringRedisTemplate stringRedisTemplate;
// 设置一个键值对,并设置过期时间为5分钟
stringRedisTemplate.opsForValue().set("key", "value").setTimeout(300000); // 300000毫秒等于5分钟
// 或者使用更精确的时间单位,如秒、毫秒等
stringRedisTemplate.opsForValue().set("key", "value", 300L); // 这里表示300秒,即5分钟
如果你需要基于某个条件自动更新过期时间,可以使用`ExpirePolicy`策略,例如`DefaultExpirationPolicy`:
```java
Map<String, Object> map = new HashMap<>();
map.put("key", "value");
MapConfig config = new MapConfig();
config.setExpiry(new DefaultExpirationPolicy(300, TimeUnit.SECONDS)); // 300秒
stringRedisTemplate.opsForHash().putAll(map, config);
```
要确保你的配置能够生效,记得在`application.properties`或`application.yml`文件中启用Redis连接,并提供正确的数据库索引。
阅读全文