SpringCache缓存快速实现注解

SpringCache是一个框架,只需要添加一个注解,就能实现缓存功能的实现,常用的就是Redis的缓存实现

依赖

spring-boot-starter-data-redis 与 spring-boot-starter-cache

@EnableCatching标注在启动类上,开启基于注解的缓存功能

@CachePut 将方法的缓存值放入到缓存中

@CachePut(value="userCache",key="result.id")

@PostMapping("/user")

public User save (@RequestBody User user){

userMapper.insert(user);

return user;

}其中value用于指定缓存内存区域的名称,key缓存数据的key支持SPEL表达式如#user.id #result.id

@Cacheable在方法执行前查看缓存中是否有数据,如果有直接返回,如果没有,将调查方法查询数据库结果返回值放入到缓存中

@Cacheable(value="userCache",key="#id")

@GetMapping("/user/{id}")

public User findById(@PathVariable Long id ){~~~~}

@CacheEvict清理指定缓存

@CacheEvict(value = "userCache", key = "#id") 清理指定key的缓存@DeleteMapping("/user/{id}")

public void deleteById(@PathVariable Long id) {~~~}

@CacheEvict(value = "userCache", allEntries = true) 清理整个value区域所有缓存

@DeleteMapping("/user")

public void deleteAll() {~~~~}

相关推荐
码农小河663 小时前
基于SSM+JSP的高校专业信息管理系统【附源码+数据库】
java·开发语言·数据库
风若飞5 小时前
Spring Ai 入门遇到问题1
java·后端·spring
Nuanyt6 小时前
LeetCode Hot 100 链表专题(五)· 2 题(Java)
java·算法·leetcode·链表
黑马程序员毕设6 小时前
基于 Java 的餐饮点餐系统设计与应用报告
java·开发语言
SL_staff6 小时前
从文档工具到知识中枢:基于JVS数字底座构建企业级统一内容管理平台的技术实践
java·开源·全栈
SL_staff6 小时前
从‘连得上’到‘管得好’:JVS-IOT双引擎驱动设备运维闭环
java·物联网·产品
w_zero_one9 小时前
递归算法(一)
java·开发语言·算法
SL_staff9 小时前
私有化低代码不是减配版开发:JVS双模式建模如何重建IT交付信任
java·低代码·spring cloud
墨着染霜华10 小时前
Redocly 生成 OpenAPI 接口文档踩坑实录|Node 版本兼容 + 接口地址错误问题解决
java
文丑颜不良啊10 小时前
LeetCode1881~1990题目解析
java·leetcode