Spring Cache代理对象 redis篇

news/2024/9/24 20:27:26/

SpringCache 代理对象

1、@EnableCaching
1、开启缓存注解功能,通常加在启动类上
2、@CachePut
1、将方法的返回值放到缓存中
3、@Cacheable
1、查看缓存中有没有数据,有就直接返回,没有就调用方法查数据,并将方法返回值放到缓存中
2、注意:会现在方法调用之前执行,缓存有数据就不会调用方法
4、@CacheEvict
1、删除一个缓存或多个缓存数据
2、注意:删除全部是不用指定的id,用allEntries = true
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

代码理解

java">@RestController
@RequestMapping("/user")
@Slf4j
public class UserController {@Autowiredprivate UserMapper userMapper;@PostMapping@CachePut(cacheNames = "userCache", key = "#user.id")//如果使用spring cache缓存数据, key的生成: userCache::2//@CachePut(cacheNames = "userCache", key = "#result.id")//result指return 返回的对象 "."成为对象导航//@CachePut(cacheNames = "userCache", key = "#p0.id")//指第一个参数//@CachePut(cacheNames = "userCache", key = "#a0.id")//@CachePut(cacheNames = "userCache", key = "#root.args[0].id")public User save(@RequestBody User user){userMapper.insert(user);return user;}@DeleteMapping@CacheEvict(cacheNames = "userCache", key = "#id")public void deleteById(Long id){userMapper.deleteById(id);}@DeleteMapping("/delAll")@CacheEvict(cacheNames = "userCache", allEntries = true)public void deleteAll(){userMapper.deleteAll();}@GetMapping//参数就是id,不需要“."的对象导航了//可以ctrl+鼠标点击key弹出源码有提示@Cacheable(cacheNames = "userCache", key = "#id")public User getById(Long id){User user = userMapper.getById(id);return user;}}

http://www.ppmy.cn/news/1428071.html

相关文章

五分钟手撕“三大特性”<继承>(下)

目录 一、protected 关键字 二、继承方式 三、final 关键字 四、子类的构造方法 五、this和super (一)相同点: (二)不同点: 六、代码块的执行先后 一、protected 关键字 在类与对象中提到过&…

Leetcode 第394场周赛 问题和解法

题目 统计特殊字母的数量 I 给你一个字符串word。如果word中同时存在某个字母的小写形式和大写形式,则称这个字母为特殊字母。 返回word中特殊字母的数量。 示例 1: 输入:word "aaAbcBC"输出:3解释:word 中的特殊…

搭建Zookeeper完全分布式集群(CentOS 9 )

ZooKeeper是一个开源的分布式协调服务,它为分布式应用提供了高效且可靠的分布式协调服务,并且是分布式应用保证数据一致性的解决方案。该项目由雅虎公司创建,是Google Chubby的开源实现。 分布式应用可以基于ZooKeeper实现诸如数据发布/订阅…

LeetCode刷题总结 | 图论3—并查集

并查集理论基础 1.背景 首先要知道并查集可以解决什么问题呢? 并查集常用来解决连通性问题。大白话就是当我们需要判断两个元素是否在同一个集合里的时候,我们就要想到用并查集。 并查集主要有两个功能: 将两个元素添加到一个集合中。判…

C语言—深度剖析数据在内存中的存储

数据类型介绍 前面我们已经学习了基本的内置类型: char //字符数据类型 short //短整型 int //整形 long //长整型 long long //更长的整形 float //单精度浮点数 double //双精度浮点数 //C语言有没有字符串类型&#…

hive了解系列一

“ 随着智能手机的普及,互联网时代红利的爆发,用户数量和产生的数据也越发庞大。为了解决这个问题,提高数据的使用价值。 Hadoop生态系统就被广泛得到应用。 在早期,Hadoop生态系统就是为处理如此大数据集而产生的一个合乎成本效益…

BUUCTF——[GXYCTF2019]BabyUpload

BUUCTF——[GXYCTF2019]BabyUpload 1.上传嘛&#xff0c;直接丢正常的jpg文件进服务器 2.发现可以正常上传&#xff0c;并且回显出来啦文件上传的路径 /var/www/html/upload/7df22610744ec51e9cb7a8a8eb674374/1111.jpg 3.尝试上传一句话木马 <?php eval($POST[123456]…

C# 自动填充文字内容到指定图片

目录 需求 开发运行环境 方法设计 实现代码 AddText方法 图片转Base64 调用示例 小结 需求 在我们的一些发布系统项目应用中&#xff0c;会经常发布一些链接图标&#xff0c;该图标基本上以模板背景为主&#xff0c;并填充项目文字内容。解决方式一般会让美工进行制作…