由于@Cacheable注解暂时是没有可以支持单独设置某个缓存数据的缓存时长,所以才开发了这个注解
- 可以设置单独某个缓存的缓存时长,防止一些数据更新了,但是缓存没及时更新
- 可以和
@CacheEvict、@CachePut一起使用 - 结合了以上两个注解的功能到这一个注解里面
- 自定义缓存机制,不仅仅是放在 Redis 里面,可以是任何形式的缓存
- SpEL 输入条件
参数说明
| 参数 | 类型 | 必须 | 默认 | 说明 |
|---|---|---|---|---|
| cacheName | String | 是 | 缓存名 | |
| key | String | 是 | 缓存键 | |
| timeout | long | 否 | 60L | 超时时间 |
| timeUnit | long | 否 | TimeUnit.SECONDS | 时间单位 |
| condition | String | 否 | "" | 缓存条件 |
| unless | String | 否 | "" | 对返回结果做处理的条件 |
| removeCondition | String | 否 | "" | 删除 key 的条件 |
| updateCondition | String | 否 | "" | 更新 key 的条件 |
| updateObject | String | 否 | "" | 参数名 |
2024年12月19日大约 3 分钟