@CacheEvict:在更新数据的时候同步删除缓存中的数据
/**
* @CacheEvict:在更新数据的时候同步删除缓存中的数据
* @CacheEvict(value = "catagory",allEntries = true) 表示删除catagory分区下的所有的缓存数据
* @param entity
*/
//@CacheEvict(value = "catagory",key="'getLeve1Category'")
/*@Caching(evict = {
@CacheEvict(value = "catagory",key="'getLeve1Category'")
,@CacheEvict(value = "catagory",key="'getCatelog2JSON'")
})*/
@CacheEvict(value = "catagory",allEntries = true)
@Transactional
@Override
public void updateDetail(CategoryEntity entity) {
// 更新类别名称
this.updateById(entity);
if(!StringUtils.isEmpty(entity.getName())){
// 同步更新级联的数据
categoryBrandRelationService.updateCatelogName(entity.getCatId(),entity.getName());
// TODO 同步更新其他的冗余数据
}
}
Java缓存更新策略:同步删除Catagory分区数据,

文章介绍了如何在更新CategoryEntity实体时,使用@CacheEvict注解同步删除缓存中特定分区(如catagory)的数据,包括allEntries=true的全分区删除和针对特定键的删除操作。
1336

被折叠的 条评论
为什么被折叠?



