🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
![](https://img.kancloud.cn/fc/e1/fce1f0f2e432721b5395840a0b032e47_1282x568.jpg) Java Caching 定义了 5 个核心接口,分别是 CachingProvider,CacheManager, Cache,Entry 和 Expiry。 * CachingProvider 定义了创建、配置、获取、管理和控制多个 CacheManager。一个应用可以在运行期访问多个 CachingProvider。 * CacheManager 定义了创建、配置、获取、管理和控制多个唯一命名的 Cache,这些 Cache 存在于 CacheManager 的上下文中。一个 CacheManager 仅被一个 CachingProvide 所拥有。 * Cache 是一个类似 Map 的数据结构并临时存储以 Key 为索引的值。一个 Cache 仅被一个 CacheManager 所拥有。 * Entry 是一个存储在 Cache 中的 key-value 对。 * Expiry 每一个存储在 Cache 中的条目有一个定义的有效期。一旦超过这个时间条目为过期的状态。一旦过期,条目将不可访问、更新和删除。缓存有效期可以通过 ExpiryPolicy 设置。 使用 JSR107 需要引入下面的依赖: ```xml <dependency> <groupId>javax.cache</groupId> <artifactId>cache-api</artifactId> <version>1.0.0</version> </dependency> ``` JSR107 开发比较麻烦,比较常用的是 Spring 缓存抽象。