SpringCache--缓存框架 ----苍穹外卖day7

目录

简介

​快速入门

引入依赖

常用注解​

使用步骤

1.开启缓存注解

[2. @Cacheable注解](#2. @Cacheable注解)


简介

快速入门

引入依赖

常用注解

使用步骤

1.开启缓存注解

2. @Cacheable注解

该注解仅用于查询操作,增删改需要使用下一个注解

@Cacheable

先进行缓存查询,如果为空,则进行方法查询,并将结果进行缓存;如果缓存中有数据,则直接使用缓存数据;该注解有多个属性如下:

cachenames/value:指定缓存组件的名字,将方法的返回值结果放在哪个缓存中,是数组的方式,可以指定 多个缓存。

key:用key来指定缓存数据的key,可以使用SpEl表达式;

keyGenerator:key的生成器,可以自己指定key的生成器组件id,和key属性二选一使用

cacheManager:指定缓存管理器,或者cacheResolver指定获取解析器二者二选一

condition:执行符合条件的情况下才缓存

unless:否定缓存;当unless指定的条件为true,方法的返回值就不会被缓存,可以获取到结果进行判断;unless="#result==null"

sync:是否使用异步缓存,默认为false

前两个是最常用的,指定范围

  1. @CacheEvict注解

该注解用于清除缓存,通常用于各种增删改操作以后。因为缓存的数据没有更新,需要从数据库重新查询

通常使用(cacheNames = " ",key = " ")指定清除哪部分的数据。如果想清除全部则把key部分变为 allEntries = true。

相关推荐
zbguolei11 分钟前
Springboot上传文件与物理删除
java·spring boot·后端
jay神13 分钟前
基于SpringBoot的校园社团活动智能匹配与推荐系统
java·前端·spring boot·后端·毕业设计
可以吧可以吧13 分钟前
idea全家桶【常见报错处理】当出现 “We could not validate your license ... “ 提示时
java·ide·intellij-idea
装不满的克莱因瓶14 分钟前
IDEA rebuild project 到底有什么作用?
java·ide·intellij-idea
Java程序员威哥15 分钟前
Arthas+IDEA实战:Java线上问题排查完整流程(Spring Boot项目落地)
java·开发语言·spring boot·python·c#·intellij-idea
打工的小王23 分钟前
Redis(一)redis的下载安装与使用
数据库·redis·缓存
Eugene__Chen41 分钟前
Java的SPI机制(曼波版)
java·开发语言·python
程序猿20231 小时前
JVM与JAVA
java·jvm·python
Mr__Miss1 小时前
JMM中的工作内存实际存在吗?
java·前端·spring
Gary董1 小时前
内存泄漏和溢出
java·jvm