1、文档
2、入门使用
2.1、在pom.xml中加入依赖
<dependency>
<groupId>org.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>3.9.7</version>
</dependency>
2.2、java代码使用
@Test
public void test1() {
// 1. 创建缓存管理器
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder()
.withCache("preConfigured" // 缓存别名、名称,用于从缓存管理器中取出缓存
, CacheConfigurationBuilder.newCacheConfigurationBuilder(Long.class, String.class, ResourcePoolsBuilder.heap(10))) //缓存配置 ,10表示键值个数
.build(true); // 构建缓存管理器并初始化
// 初始化
// cacheManager.init(); build 是传参为true 表示初始化
// 通过名称获取缓存,注意 需要传入缓存对应的键值类型
Cache<Long, String> preConfigured = cacheManager.getCache("preConfigured", Long.class, String.class);
// 创建新的缓存
Cache<Long, String> myCache = cacheManager.createCache("myCache",
CacheConfigurationBuilder.newCacheConfigurationBuilder(Long.class, String.class, ResourcePoolsBuilder.heap(5)));
// 键唯一
myCache.put(1L,"do one!");
// 根据键获取缓存值
String value = myCache.get(1L);
System.out.println(value);
// 移除缓存
cacheManager.removeCache("preConfigured");
// 关闭所有缓存
cacheManager.close();
}
2.2、使用xml配置文件
可以使用xml配置文件来配置缓存管理器
<config
xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
xmlns='http://www.ehcache.org/v3'
xsi:schemaLocation="http://www.ehcache.org/v3 http://www.ehcache.org/schema/ehcache-core.xsd">
<!-- 持久化到磁盘 , 集群模式可以使用-->
<persistence directory="${java.io.tmpdir}/ehcache-data"/>
<cache alias="foo">
<key-type>java.lang.String</key-type>
<value-type>java.lang.String</value-type>
<resources>
<heap unit="entries">20</heap>
<offheap unit="MB">10</offheap>
</resources>
</cache>
<cache-template name="myDefaults">
<key-type>java.lang.Long</key-type>
<value-type>java.lang.String</value-type>
<heap unit="entries">200</heap>
</cache-template>
<cache alias="bar" uses-template="myDefaults">
<key-type>java.lang.Number</key-type>
</cache>
<cache alias="simpleCache" uses-template="myDefaults" />
</config>