一、简介
缓存介绍
缓存,在我们的日常开发中用的非常多,是我们应对各种性能问题支持高并发的一大利器。
Spring 从
3.1
开始就引入了缓存的支持。定义了如下两个接口来统一支持不同的缓存技术。
org.springframework.cache.Cache
org.springframework.cache.CacheManager
我们熟知的缓存有:堆缓存(
Ehcache3.x
、Guava Cache
、Caffeine
等)、堆外缓存(Ehcache3.x
、MapDB
等)、分布式缓存(Redis
、Memcached
等)等等。常用的缓存注解:
@EnableCaching
、@Cacheable
、@CachePut
、@CacheEvict
、
Cache 和 CacheManager 接口说明
- Cache 接口包含缓存的各种操作集合,你操作缓存就是通过这个接口来操作的。
- Cache 接口下 Spring 提供了各种 xxxCache 的实现,比如:RedisCache、EhCache、ConcurrentMapCache等。
- CacheManager 定义了创建、配置、获取、管理和控制多个唯一命名的 Cache。这些 Cache 存在于 CacheManager 的上下文中。
二、缓存实战
1.开启缓存
在 SpringBoot 的启动类上添加注解@EnableCaching
。
2.@Cacheable
@Cacheable
的作用 主要针对方法配置,能够根据方法的请求参数对其结果进行缓存。
常用属性:
-
cacheNames
、value
:用来指定缓存组件名称。@Cacheable(cacheNames = "users", key="