我正在使用Spring Cache抽象,并且定义了多个缓存。有时,当数据变化时,我希望清除多个缓存。
是否有使用Spring的@CacheEvict
注释清除多个缓存的方法?
我正在使用Spring Cache抽象,并且定义了多个缓存。有时,当数据变化时,我希望清除多个缓存。
是否有使用Spring的@CacheEvict
注释清除多个缓存的方法?
你可以这样做:
@Caching(evict = {
@CacheEvict("primary"),
@CacheEvict(value = "secondary", key = "#p0")
})
请查看参考文献以获取详细信息。
保持紧凑:您可以在@CacheEvict
注释中枚举多个缓存以将它们逐一删除:
@CacheEvict(value = { "cache1", "cache2" }, allEntries = true)
allEntries = true
)适用于您指定的所有缓存。根据我的经验,这种情况并不经常发生。 - Madbreaks@CacheEvict(value = { "cache1", "cache2" }, key = "key")
- YohanK
@Caching(evict = [ CacheEvict("primary"), CacheEvict(value = ["secondary"], key = "#p0") ])
- Jonas Pedersen