# SpringCacheDemo **Repository Path**: Lollipope/spring-cache-demo ## Basic Information - **Project Name**: SpringCacheDemo - **Description**: Spring Cache是⼀个框架,实现了基于注解的缓存功能,只需要简单地加⼀个注解,就能实现缓存功能,⼤⼤ 简化我们在业务中操作缓存的代码。 在spring boot项⽬中,使⽤缓存技术只需在项⽬中导入相关缓存技术的依赖包,并在启动类上使⽤ @EnableCaching开启缓存⽀持即可。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-09-02 - **Last Updated**: 2024-09-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 4. SpringCache 4.1 介绍 Spring Cache是⼀个框架,实现了基于注解的缓存功能,只需要简单地加⼀个注解,就能实现缓存功能,⼤⼤ 简化我们在业务中操作缓存的代码。 `Spring Cache`只是提供了⼀层抽象,底层可以切换不同的cache实现。具体就是通过CacheManager接⼝来统⼀ 不同的缓存技术。CacheManager是Spring提供的各种缓存技术抽象接⼝。 |注解 | 说明 | |:---:|:-----------------------------------------| | `@EnableCaching` | 开启缓存注解功能 | | `@Cacheable` | 在⽅法执⾏前spring先查看缓存中是否有数据,如果有数据,则直接返回缓存数据;若没有数据,调⽤⽅法并将⽅法返回值放到缓存中 | | `@CachePut` | 将⽅法的返回值放到缓存中 | | `@CacheEvict` | 将⼀条或多条数据从缓存中删除 | 在spring boot项⽬中,使⽤缓存技术只需在项⽬中导入相关缓存技术的依赖包,并在启动类上使⽤ @EnableCaching开启缓存⽀持即可。 ## 由于SpringCache的基本功能是Spring核⼼(spring-context)中提供的,所以⽬前我们进⾏简单的SpringCache测试,是可以不⽤额外引入其他依赖的。 其实这个框架的目的就是用注解的方式替换写代码语句来缓存到Redis中(RedisConfig) 使用方式: 1). pom.xml中引入依赖 ```xml org.springframework.boot spring-boot-starter-cache org.springframework.boot spring-boot-starter-data-redis ``` 2). application.yml中设置缓存过期时间 ```yaml spring: cache: redis: time-to-live: 1800000 #设置缓存数据的过期时间 ``` 3). 启动类上加入@EnableCaching注解 ```java @Slf4j @SpringBootApplication @ServletComponentScan @EnableTransactionManagement @EnableCaching //开启SpringCache注解方式是缓存功能 public class RgApplication { public static void main(String[] args) { SpringApplication.run(RgApplication.class, args); log.info("项目启动成功..."); } } ```