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。

相关推荐
guestsun1 天前
SpringBoot七大事务失效场景分析
java·spring boot·mybatis
毕设源码-邱学长1 天前
【开题答辩全过程】以 基于Java的学校住宿管理系统的设计与实现为例,包含答辩的问题和答案
java·开发语言
兑生1 天前
【灵神题单·贪心】1481. 不同整数的最少数目 | 频率排序贪心 | Java
java·开发语言
daidaidaiyu1 天前
一文学习 Spring 声明式事务源码全流程总结
java·spring
零雲1 天前
java面试:了解抽象类与接口么?讲一讲它们的区别
java·开发语言·面试
左左右右左右摇晃1 天前
Java并发——synchronized锁
java·开发语言
sxlishaobin1 天前
Java I/O 模型详解:BIO、NIO、AIO
java·开发语言·nio
彭于晏Yan2 天前
Spring AI(二):入门使用
java·spring boot·spring·ai
有一个好名字2 天前
vibe codeing 开发流程
java
兑生2 天前
【灵神题单·贪心】3745. 三元素表达式的最大值 | 排序贪心 | Java
java·开发语言