最近在项目中使用了@Cacheable和@CacheEvict注释来添加和清除缓存,但在同一事务中出现的第一个缓存是清晰的,而在此事务中没有的方法是查询
1.value必须具有指定方法清除哪个缓冲区中的数据的属性,默认值为空数组
2. allEntries属性表示整个缓存是否清晰
3.beforeInvocation这一属性很重要,它要求在执行相应方法之前删除缓存,缺省的false,即先执行方法,然后删除缓存,也就是说,在执行方法之前删除缓存
4.condition属性指定SpEL表达式,并且仅当表达式为true时清除缓存
5.key以SpEL表达式显示指定缓存的key
(eg ) 3358www.Sina.com/
6 .缓存名称缓存名称的集合。 数据结构是数组型
笔者常用的是key = "#warehousePo.guid + ‘all’"的使用。 由于业务逻辑不同,缓存删除的情况也不同,因此需要仔细考虑是设置为true还是false。 文章很浅,可以大致理解各个参数的含义。