1.简介

  1. 基于注解,代码清爽简洁
  2. 可以对缓存进行回滚
  3. 基于注解也可以实现复杂的逻辑
  4. 基于具体的缓存产品(如Guava、EhCache、Redis等)的共性进行了一层封装

2.相关配置

1.导入依赖

<!-- Spring Cache的引入-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-cache</artifactId>
        </dependency>
        <!-- redis依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-data-redis</artifactId>
        </dependency>

2.application.yml配置

spring:
  redis:
    # redis 的 IP 地址
    host: hadoop128
    # redis的端口
    port: 6379
    # redis的登录密码
    password: czx123
    # 使用redis的数据库0
    database: 0
  # spring cache的使用
  cache:
    # 指定使用的缓存类型
    type: redis
    #设置过期时间
    redis:
      time-to-live: 1800000

3.相关注解

@CacheEvict    删除缓存,一般配置在删除,更新,新增方法上面(可以加allEntries=true删除value下所有key)
@Cacheable    应用到读取数据的方法上,即可缓存的方法,如查找方法:先从缓存中读取,如果没有再调用方法获取数据,然后把数据添加到缓存中
@EnableCaching    开启 SpringCache 的默认配置
@CacheConfig    全局Cache配置
@CachePut    将数据放到缓存中,不考虑缓存中有没有,可用于更新或新增方法上