@CacheEvict注解参数详解

这篇具有很好参考价值的文章主要介绍了@CacheEvict注解参数详解。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在项目中一直用到@Cacheable和@CacheEvict这两个注解来加缓存和清除缓存,但有时候会出现在同一个事务中先是清楚了缓存,但是有不在这个事务中的方法调用了查询,又把更新前的数据重新放到缓存里面了,所以就想好好的去研究一下@CacheEvict这个缓存删除的注解

1.value

必须属性,用于指定该方法清除哪个缓存区的数据,默认是一个空的数组

2. allEntries

这个属性是指是否清楚整个缓存区

3.beforeInvocation

这个属性比较关键,他的意思是是否在执行对应方法之前删除缓存,默认 false(即执行方法之后再删除缓存),当我们遇到需要在执行方法前删除缓存,也就是不管方法执行是否成功都需要清除缓存,那我们就可以把beforeInvocation的值改为true

4.condition

这个属性是指定一个SpEL表达式,只有当该表达式为true时才会清除缓存

5.key

通过SpEL表达式显示指定缓存的key
eg: key = "#warehousePo.guid + ‘all’"

6.cacheNames

cache名称集合,数据结构为数组类型

笔者用到的比较多的就是beforeInvocation的使用,因为根据不同的业务逻辑,会出现缓存删除的场景不同,需要慎重考虑设置为true还是false,文章比较浅,可以大致理解一下各个参数的含义。文章来源地址https://www.toymoban.com/news/detail-409023.html

到了这里,关于@CacheEvict注解参数详解的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【优雅的参数验证@Validated】@Validated参数校验的使用及注解详解——你还在用if做条件验证?

    请先看看下面代码:(简单举个例子,代码并不规范) 以上代码主要是为了对用户user实体进行条件验证。 但是那么多的if, 写得纯纯得小白一个,也使得代码显得臃肿不美观不优雅! 接下来,让我们学习使用优雅的参数验证@Validated! @Valid和@Validated是Spring Validation框架提供

    2024年02月02日
    浏览(43)
  • Spring Boot 中 Controller 接口参数注解全攻略与实战案例详解

    在 Spring Boot 应用程序中,Controller 是 MVC 架构模式中的核心组件之一,负责处理 HTTP 请求并返回响应结果。为了更好地映射请求、解析请求参数、执行业务逻辑和生成视图或 JSON 数据,Controller 中广泛使用了各种注解。本文将全面梳理 Spring Boot 中 Controller 接口所使用的各类注

    2024年04月24日
    浏览(39)
  • mybatis多参数传递报错问题分析+硬核mybatis底层源码分析+@Param注解+图文实战环境分析【4500字详解打通,没有比这更详细的了!】

    ❗操作 mybatis 时报错: org.apache.ibatis.binding.BindingException: Parameter ‘tableName’ not found. Available parameters are [arg1, arg0, param1, param2] Maven MySQL 8.0.30 在本机 MySQL 中执行: 🍀 pom.xml导入依赖 🍀 jdbc.properties 在 resources 目录下新建 jdbc.properties 配置文件。 🍀 mybatis-config.xml 在 resources 目

    2024年02月12日
    浏览(49)
  • ChatGPT之后,下个AIGC杀手级应用已近在眼前

    鱼羊 发自 凹非寺 量子位 | 公众号 QbitAI 大模型模式,正在新一波AIGC的浪潮里被再度验证。 从AI画画的出圈,到现如今ChatGPT的火爆,面向大众的爆款产品接口背后,无不是大模型技术的突破创新。 而当这种“大力出奇迹”的技术路径价值愈发凸显,行业内外也不禁好奇:

    2024年02月10日
    浏览(48)
  • 51、基于注解方式开发Spring WebFlux,实现生成背压数据,就是实现一直向客户端发送消息

    什么是背压: 这个是Reactive(反应) 的概念,当订阅者的消费能力,远低于发布者时,订阅者(也就是消费者)有通知取消或终止发布者生产数据的机制,这种机制可以称作为“背压”。 说白了就是:当消费者消费积压的时候,反向告诉推送生产者,我不需要你生产了,你

    2024年02月09日
    浏览(51)
  • 模型参数加载后继续训练或测试,准确率下降很多或者一直不变

    1、请首先检查自己是不是没有将原来的模型参数成功导入 你以为你导入成功了,但是注意,你load_state_dict时,如果用了strict=False是不会报错的,所以如果你没有仔细核对参数名是否正确(主要针对有使用预训练模型参数的情况,这时参数名称容易与你的模型有出入) 仔细检

    2024年02月13日
    浏览(51)
  • @Accessors 注解参数

    @Accessors 注解参数经常会在实体类上看到,记录一下,方便以后复习 @Accessors注解的作用 :当属性字段在生成 getter 和 setter 方法时,做一些相关的设置。 @Accessors 共有三个属性,分别是 fluent,chain,prefix 不写默认为false,当该值为 true 时,对应字段的 getter 方法前面就没有

    2024年02月03日
    浏览(29)
  • @RequestParam注解参数

    做业务的时候经常忘记@RequestParam注解参数,记录一下 首先,我们要清楚@RequestParam是干什么的 @RequestParam:将请求参数绑定到你控制器的方法参数上,路径上有个参数+? 语法:@RequestParam(value=”参数名”,required=”true/false”,defaultValue=””) value:参数名 required:是否包含该参

    2024年02月03日
    浏览(40)
  • Spring MVC:常用参数(注解)的使用和参数绑定的验证

    Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)(第2版) Spring MVC常用参数 Spring MVC简单应用 Spring MVC参数绑定 本实验采用的是本地安装的tomcat8.5.0版本 (1)创建maven 管理的java web工程 (2)添加本地tomcat war包 (3)实验过程 输出Hello Word 访问端口:http://localhost:8080/chapter1

    2024年02月04日
    浏览(43)
  • Springboot常用方法参数注解及示例

    Springboot常用方法参数注解及示例 一、 @RequestParam : 从URL查询参数中提取数据。 二、 @PathVariable : 从URL路径中提取数据。 三、 @RequestBody : 从请求体中提取数据,并映射到对象。 四、 @RequestHeader : 从请求头中提取数据。 五、 @Validated / @Valid : 启用方法参数校验,确保参

    2024年02月10日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包