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() {~~~~}

相关推荐
cyforkk3 分钟前
IntelliJ IDEA 配置 Java 类全局注释模板操作指南
java·ide·intellij-idea
代码探秘者7 分钟前
【大模型应用】6.RAG 场景下的向量+关键词混合检索
java·开发语言·人工智能·python·spring
猿小路9 分钟前
SVN安装及IDEA集成详细使用教程
java·svn·intellij-idea
spencer_tseng11 分钟前
ojdbc6-1.0.0.jar xmlworker-1.0.0.jar
java·maven·jar
Amour恋空32 分钟前
Nacos服务发现与配置
java·后端·服务发现
chikaaa39 分钟前
RabbitMQ 核心机制总结笔记
java·笔记·rabbitmq·java-rabbitmq
NE_STOP43 分钟前
SpringCloud快速入门--GateWay路由网关与Config配置中心
spring
咕叽吧咔1 小时前
LeetBook乐扣题库 142. 环形链表 II
java·数据结构·leetcode·链表
Sylvia33.1 小时前
体育数据API实战:用火星数据实现NBA赛事实时比分与状态同步
java·linux·开发语言·前端·python
Coder-coco1 小时前
家政服务管理系统|基于springboot + vue家政服务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·家政服务管理系统