@lovely 2023-05-03 19:41 采纳率: 86.4%
浏览 26
已结题

springboot缓存

我最近在做一个项目,在仓库这个模块,我打算在第一次查询的时候,把所有的仓库数据全部存储起来,后面查询的时候就直接返回缓存就可以了。
在执行修改仓库操作的时候,顺便修改缓存。但是,我想这个时候如果出现了异常,springboot回滚了事务,但是缓存却被修改了。
所以,我想问有没有什么解决办法。我想的是,springboot有没有什么处理异常的方式

img

  • 写回答

3条回答 默认 最新

  • 创意程序员 2023-05-03 19:48
    关注

    在方法上使用 @Cacheable 注解,注解里可以设置条件,一般是判断方法返回成功,满足这个条件才更新注解。
    通常是查询方法上使用这个注解,查询成功的结果放入缓存。修改方法上使用 @CachePut 更新缓存,也可以和删除方法一样,使用 @CacheEvit 驱逐缓存。同样可以设置条件,方法执行成功才执行相应的缓存动作。
    开启缓存功能需要在启动类上使用 @EnableCaching 注解。缓存条件使用SPEL表达式。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 5月11日
  • 已采纳回答 5月3日
  • 创建了问题 5月3日

悬赏问题

  • ¥60 QQOP数据,什么是op数据号,怎么提取op数据!能不能大量提取(语言-c语言)
  • ¥15 matlab代码 关于微分方程和嵌套的分段函数。
  • ¥15 把VMware项目复制到另一台电脑
  • ¥15 onlyoffice编辑完后立即下载,下载的不是最新编辑的文档
  • ¥15 求caverdock使用教程
  • ¥15 Coze智能助手搭建过程中的问题请教
  • ¥15 12864只亮屏 不显示汉字
  • ¥20 三极管1000倍放大电路
  • ¥15 vscode报错如何解决
  • ¥15 前端vue CryptoJS Aes CBC加密后端java解密