springboot初学(八)缓存小记

Springboot中默认的缓存管理器:ConcurrentMapCacheManager

 

 

几个常用的注解:

1.@Cacheable 可缓存

该注解的属性有:

key的值可以通过两种方式来指定:1.SpEL表达式  2.keyGenetator来指定。(二选一)

第一种方式SpEL

 第二种方式keyGenetator

需要编写一个配置类,并且构造一个keyGenerator装载成@Bean,注意返回bean的类型为

使用时的写法:  keyGenerator = "bean的id"。

 2.@CachePut缓存更新

在我们的业务方法更新完数据库后,我们想到的是缓存中的数据也进行同样的更新,此时我们就可以在该业务方法上加上该注解.使用方法同上面的差不多,但是有点区别的是:在我们更新完数据库的操作后,我们缓存需要同步更新数据,那这个数据是需要在完成数据库更新后返回的数据,所以我们的CacheNames/value 该怎么指定怎么指定,但是key是和返回的数据有关联的,比如是数据中的某个属性,所以我们需要这样使用:key = "#result.属性"。(返回的数据的某个属性)

3.@CacheEvict缓存驱逐

我们通过key指定要删除的缓存的key。key = "#a".

属性 :

1.AllEntries = false  默认是false ,如果指定为true的话,我们在删除某个缓存时,会把该cachedName下的所有的key-value全部删除。

2.beforeInvocation = false 默认是false,如果指定为true,是指在方法执行前便将缓存删除。

 

4.@Caching

 可以通过该注解可以达到组合多个上述三个注解的作用。

 5.@CacheConfig注解配置

该注解是放在类上的,目的是可以减少方法上注解的重复编写,比如有的时候我们一个业务代码中都使用的同一个CacheName 或者同一个key,这样我们就可以直接通过该注解标注在类上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值