Spring boot + Redis + Spring Cache 实现缓存

server/2024/9/25 9:08:15/

学习

Redis 的 value 有 5 种常用的数据结构

        Redis 存储的是 key-value 结构的数据。key 是字符串类型,value 有 5 种常用的数据结构:

Redis 的图形化工具

        Another Redis Desktop Manager

Spring Data Redis

        Redis 的 Java 客户端。

Spring Cache

        Spring Cache 是一个框架,基于注解实现缓存功能,更加简单。底层的缓存实现,可以是Redis、Caffeine或者EHCache等。

        Spring Cache 常用注解:

配置

  1. 下载Redis。(默认没有密码)
  2. 在 xml 中引入 Spring Data Redis 和 Spring Cache 2.7.3 的依赖。
  3. 在 yml 中配置 Redis 数据源。

实现

1. 开启:@EnableCaching

     放在启动类上,开启缓存注解功能。   

2. 增:@CachePut

在 Controller 层:

java">//    增@PostMapping()@CachePut(cacheNames = "userCache", key = "#user.id")  // key = userCache::idpublic User save(@RequestBody User user) throws IOException {
//        保存到mysqluserService.save(user);
//        保存到mysql后,id已经有了,可以直接插入到ESesService.AddDocument(user);return user;}

采用了spEL表达式(#对象.属性)。

注:先操作 save 方法,再操作 @CachePut,所以 user 此时有 id 了。

3. 查:@Cacheable

4. 删、改:@CacheEvict

  1. @CacheEvict(cacheNames = "userCache", key = "#user.id") 删除某个id
  2. @CacheEvict(cacheNames = "userCache", allEntries = True) 删除所有


http://www.ppmy.cn/server/20240.html

相关文章

SpringMVC interceptor有时候配置的时候path=“/**“ 两个星号什么意思,与path=“/“以及path=“/*“什么区别

直接上案例&#xff1a; <mvc:interceptor> <mvc:mapping path"/**"/> <bean class"com.xuyang.interceptor.user.UserAuthInterceptor" /> </mvc:interceptor>/**的意思是所有文件夹及里面的子文件夹 /*是所有文件夹&#xff0c…

MySQL无法打开情况下读取frm文件的表结构

一、背景&#xff1a; 开发人员通过MySQL客户端工具&#xff0c;可以访问MySQL5.7.6&#xff0c;可以访问具体的DB&#xff0c;可以查看小写表的数据&#xff0c;但是无法查看大写表的数据&#xff0c;报错信息为“table does not exist”。 二、检查与分析&#xff1a; ssh登录…

测试下目录显示否

目录 1、安装docker 2、搜索镜像 3、拉取镜像 4、查看镜像列表 5、运行镜像 6、查看运行容器列表 8、命令行连接数据库 1、安装docker 2、搜索镜像 docker search mysql 3、拉取镜像 docker pull mysql 4、查看镜像列表 docker images 5、运行镜像 docker run -p …

微前端实现原理详解——以Single-Spa为例

Single-Spa是一个用于微前端架构的JavaScript框架。它允许在一个应用程序中同时加载多个前端框架&#xff0c;例如React、Angular、Vue等。以下是Single-Spa的核心架构解析&#xff1a; 核心思想&#xff1a;Single-Spa的核心思想是将前端应用程序拆分为多个小应用&#xff0c;…

AI预测体彩排列3第2套算法实战化测试第5弹2024年4月27日第5次测试

今天继续进行新算法的测试&#xff0c;今天是第5次测试。好了&#xff0c;废话不多说了&#xff0c;直接上图上结果。 2024年4月27日体彩排3预测结果 6码定位方案如下&#xff1a; 百位&#xff1a;6、2、1、7、8、9 十位&#xff1a;8、9、4、3、1、0 个位&#xff1a;3、7、8…

计算机网络【CN】Ch3 数据链路层

目录 数据链路层的功能 【※】VLAN 三种划分VLAN的方法&#xff1a; 【※】MAC帧格式 【※】三种可靠传输机制 ​编辑 【※】介质访问控制 信道划分介质访问控制 随机介质访问控制 CSMA CSMA/CD【有线】 CSMA/CA【无线】 信道利用率技巧 循环冗余校验CRC 以太网[802.3] 以太网…

Spring(SSM框架)

目录 一、核心体系 二、IOC和AOP 1.控制反转&#xff08;IoC&#xff09; 2.面向切面编程&#xff08;AOP&#xff09; 三、整合持久层 1. JDBC模板&#xff08;JdbcTemplate&#xff09; 2. JPA与Hibernate 3. MyBatis 4. 事务管理 5. 数据源配置 6. 整合其他ORM框…

接收区块链的CCF会议--SAGT 2024 截止5.21 附录用率

会议名称&#xff1a;SAGT CCF等级&#xff1a;CCF C类会议 类别&#xff1a;交叉/综合/新兴 录用率&#xff1a;2023年录用率44%&#xff08;26/59&#xff09; Scope Foundational work is solicited on topics including but not limited to: Solution Concepts in Game…