'EnableCaching'

redis缓存

本篇博客为博主学习springboot中使用redis缓存的一些笔记

依赖问题

在springboot中使用redis作为缓存需引入以下依赖

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>

可在pom文件中点击鼠标右键选择maven->show dependencies则可以查看全部依赖

设置redis连接数据

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
spring:
redis:
host: ip
password: password
port: 6379
jedis:
pool:
# 最大连接数
max-active: 140
# 最大空闲数
max-idle: 10
# 最小空闲
min-idle: 2
max-wait: 1000
#最大阻塞等待时间
timeout: 1000

开始操作

1 在启动类加上@EnableCaching

2 @Cacheable

使用该注解作用于方法上或类上,注解在方法上表示该方法返回值将进行缓存,注解在类上表示该类下的所有方法返回值都会被缓存

该注解中有多个字段在这里我先记录我使用到注解

1
@Cacheable(cacheNames = "wugui",key = "#w.method()",condition = "#w.method() > 5", unless = "#result.method() <1 ")

cacheNames相当于缓存主键,key则为辅助键,condition表示形参条件,unless表示返回值条件取反只有当condition与unless瞒住后才进行缓存其中的值为sqel表达式,key中的w表示形参名,unless中的resule为固定值,。注意其中的#

3 @CacheEvict

该注解表示执行方法后会删除缓存由参数 cacheNames ,key对应 一般在更新数据库时进行删除缓存操作,以便下次获取新的缓存

4 @CachePut

该注解表示将函数返回类容用来替换之前的缓存 参数类型需要一致 由参数 cacheNames ,key对应

5 @CacheConfig(cacheNames = “wugui”)

该注解作用于类上 可以统一设置类中cache类注解的相同属性值

文章目录
  1. 1. redis缓存
  2. 2. 依赖问题
  3. 3. 开始操作
    1. 3.1. 1 在启动类加上@EnableCaching
    2. 3.2. 2 @Cacheable
    3. 3.3. 3 @CacheEvict
    4. 3.4. 4 @CachePut
    5. 3.5. 5 @CacheConfig(cacheNames = “wugui”)
,