SpringCache之 @CacheEvict

本文详细解析了@CacheEvict注解的使用方法,包括allEntries参数的作用及beforeInvocation参数如何确保缓存在方法调用前被清除,帮助开发者掌握缓存管理的关键技巧。

allEntries注解

  1. 使用CacheEvict注解,会清除对应的Key值得缓存,分为以下两种情况:
  • 如果使用allEntries为true时,测试会把所有value对应的缓存全部删除;
  • 如果allEntries为false(默认),此时只会删除该key值的缓存;
    @CacheEvict(value="User",key="#id.toString()",allEntries=true, beforeInvocation=true)//
    public User delete(Integer id) {
        //TODO 
    }

 针对于以上配置 时,会进行删除该value=User值空间下的所有缓存数据。

beforeInvocation注解

  1. 当执行这个方法之前执行清除缓存的操作,这样不管这个方法执行成功与否,该缓存都将不存在,默认值为false,则不进行删除。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值