一、配置好redis,不做赘述,只需要连接成功就好,有复杂需求请自行搜索redis 缓存相关策略配置

二、springboot pom引入cache

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-cache -->
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-cache</artifactId><version>2.6.6</version>
</dependency>三、springboot启动类上加上@EnableCaching注解
@EnableCaching
public class Application{}四、配置文件指定redis为缓存管理器,例如在 application.properties application.yml里spring.cache.type=redisspringcache:type: redis

五、开始使用了,大体有这几个注解

@Cacheable(value="userList")

这个用的最多,简单粗暴,这个注解在执行前先查看缓存中是不是已经存在了,如果存在,直接返回。如果不存在,将方法的返回值放入缓存

@CachePut

这个注解直接将返回值放入缓存中,通常用于保存和修改方法中

​@CacheEvict(value = "jobList",beforeInvocation = true)

缓存也是需要更新的,所以,这个是缓存删除注解,用来删除可能存在过时的数据,一般的放在删除方法上

​看图更直观:

关于@CacheEvict多说两句:

在spring cache中,@CacheEvict是清除缓存的注解。其中注解参数可以只有value,key意思是清除在value值空间中的key值数据,此时默认在当前注解方法成功执行之后再清除。这时候就会存在一个问题,也许你的注解方法成功执行了删除操作,但是后续代码抛出异常导致未能清除缓存,下次查询时依旧从缓存中去读取,这时查询到的结果值是删除操作之前的值。

有一个简单的解决办法,在注解参数里面加上beforeInvocation为true,意思是说当执行这个方法之前执行清除缓存的操作,这样不管这个方法执行成功与否,该缓存都将不存在。

当注解参数加上allEntries为true时,意思是说这个清除缓存是清除当前value值空间下的所有缓存数据

springboot redis做缓存相关推荐

  1. springboot整合redis做缓存

    之前的项目中,用到过redis,主要是使用redis做缓存,redis在web开发中使用的场景很多,其中缓存是其中一个很重要的使用场景,之所以用作缓存,得益于redis的读写数据,尤其是在读取数据的时 ...

  2. SpringBoot集成Redis和配置Redis做缓存

    Redis介绍 Redis是一个开源的.高性能的.基于键值对的缓存与存储系统,通过提供多种键值数据类型来适应不同场景下的缓存与存储需求,直观的存储结构使得通过程序交互十分简单. Redis数据库中所有 ...

  3. 9.redis 做缓存

    全网最新相关内容 标题-链接 发布日期 简介 来源 轻松理解redis做缓存的流程_小浩丶的博客-CSDN博客_redis ... 2022-4-5 22:59:03 1. 引言 缓存有啥用?降低对数 ...

  4. 如果redis哨兵宕机了怎么办_Spring集成Redis做缓存,Redis宕机时Spring处理的问题

    采用的是Spring自带的缓存管理,使用Redis做缓存,在Spring中配置如下 @Configuration @EnableCaching public class CachingConfig { ...

  5. 使用redis做缓存,遇到Could not return the resource to the pool异常怎么办呐!

    使用redis做缓存,短短几天就遇到两次redis.clients.jedis.exceptions.JedisException: Could not return the resource to ...

  6. Springboot+redis 做实时在线人数统计

    Springboot+redis 做实时在线人数统计 介绍 实现 介绍 利用redis 有序集合实现. Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员. 不同的是 ...

  7. SpringBoot集成Shiro前后端分离使用redis做缓存

    文章目录 一 .shiro介绍 1.基础介绍 2.基本功能点 3.基本流程图 二. 常用的权限管理表关系 2.1. 表组成 2.2. 表结构 三.实战案例 3.1. 案例介绍 3.2. 依赖 3.3. ...

  8. java 缓存分页_基于redis做缓存分页

    在实际业务中我们会将一些热数据缓存到redis里面,这时候数据量比较大的话,我们就要对这些热数据进行分页,分页的方式有2种: 第一:从redis拿出所有数据后,再做内存分页(不推荐),热点数据小的时候 ...

  9. python使用redis做缓存_python实现类redis缓存

    越来越觉得的缓存是计算机科学里最NB的发明(没有之一), 现在项目用的是redis做的缓存, 它的两个特性用的蛮顺手的: 键值查找功能 缓存可设置过期时间 突突然的,觉得用python也可以简单的模拟 ...

最新文章

  1. OpenCV学习(12) 图像的腐蚀与膨胀(3)
  2. 【前沿视点】Web Lab——鼓舞人心的谷歌 Chrome 实验室
  3. php7协程通信使用,PHP7下的协程实现
  4. 企业 MySQL 优化实施方案
  5. 开源纯C#工控网关+组态软件(五)从网关到人机界面
  6. img 错误样式css,css设置图片大小_css 控制img图片的大小样式
  7. Mac电脑 + Windows机械键盘?功能键映射了解一下
  8. python笔记26-命令行传参sys.argv实际运用
  9. 《OSPF和IS-IS详解》一2.4 理解内部BGP
  10. Vuex的官方文档笔记
  11. 利用QGIS免费批量获取Google、Bing等高分辨率卫星影像
  12. Autojs对接图灵机器人
  13. 对应阻尼下的开环增益matlab,初识控制系统计算机仿真和辅助设计
  14. 算法设计与分析 ——10-7课程总结
  15. ffmpeg生成裸眼3D、伪3D视频
  16. pyhanlp机构名识别时动态添加自定义词表(CustomDictionary)
  17. 奇数值结点链表(C语言实现)
  18. matlab电机系统建模与仿真软件下载,基于MATLAB直流无刷电动机系统建模与仿真
  19. 毕得医药通过科创板注册:年营收6亿 戴岚姐弟为实控人
  20. QQ2013登陆界面动态背景资源

热门文章

  1. java之IOC原理理解和框架实现
  2. jsp ssh礼品在线销售系统
  3. java三元表达式因自动拆箱导致的NPE问题
  4. paddleOCR SystemError: (Fatal) Blocking queue is killed because the data reader raises an exception.
  5. nowcoder19153 无限手套
  6. 分享txt转换pdf格式具体转换方法
  7. CodeMix使用教程:构建管道和验证
  8. 河北2008年高考分数线确定
  9. 自己动手写一个仿Docker虚拟容器
  10. Shell Date命令