目录
Spring Cache介绍
缓存产品有很多,Spring Cache可以对它们进行整合,只提供一层抽象,具体缓存产品是什么样的都支持
Spring Cache常用注解
Spring Cache使用方式
以项目cache_demo为例
@CachePut
适用于crud中的新增save方法,当我们插入了一条数据,对应的就应该把数据加入到缓存
分析:
@CachePut该注解需要指定两个参数,key / value
value是该缓存的名称(自定),表示一类缓存 。key代表缓存的key
该分类缓存下可能会有多个缓存数据,不能混淆缓存数据,因此这些缓存数据就需要key来区分
其中key的值不能写死,应该是动态的。由此段代码的需求可知,保存用户的唯一标识为用户id,因此使用用户的id作为key。
具体如何获取,可以使用Spring Cache提供的方式
使用Spring Cache最需要注意的就是key的设计
@CacheEvict
适用于crud中的删除delete和更新update方法,当我们需要删除或更新数据时,还需要删除对应的缓存
删除数据delete
更新数据update
@Cacheable
适用于crud中的getById(查询)方法,当我们需要查询数据时,先查看缓存是否有数据,再分别进行处理
根据查询条件
Spring Cache操作Redis
步骤
1.导入maven坐标
一个Redis的坐标,一个对缓存技术扩展整合的Cache坐标
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-cache</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
2.配置yml文件
以下步骤不再赘述