spring cache快速入门

Spring cache

Spring Cache 是一个框架,实现了基于注解的缓存功能,只需要简单地加一个注解,就能实现缓存功能。

Spring Cache 提供了一层抽象,底层可以切换不同的缓存实现。

例如:EHCache,Caffeine,Redis

导入坐标

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-cache</artifactId>
        </dependency>

常用注解

  • @EnableCaching:开启缓存注解功能,通常加在启动类上
  • @Cacheable:则直接返回缓存数据;如果在方法执行前先查询缓存中是否有数据,如果有数据没有缓存数据,调用方法并将方法返回值放到缓存中
  • @CachePut:将方法的返回值放到缓存中
  • @CacheEvict:将一条或多条数据从缓存中删除

@EnableCaching

放到启动类上即可

@CachePut

一般放在Controller中的方法前面

cacheNames:cache的名称,名称要做到见名知意

key:要保存的值(注意参数名保持一致,key的写法,有5种)

冒号表示层级结构

redis里key为:cacheNames::user的id

          value为:一个user对象(函数的返回值)

@Cacheable

一般放在Controller中的方法前面

在缓存中查找,有没有相应的数据,有直接返回,如果没有,执行后面的查询数据库操作,再将数据加入到缓存。

在redis中的key为:userCache::参数里的id值        

                value为:函数的返回值,即一个user对象

@CacheEvict

//通过id删除
@CacheEvict(cacheNames = "userCache",key = "#id")

//批量删除
@CacheEvict(cacheNames = "userCache",allEntries = true)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值