EhCache最新版本是3.X 本人一直用的是2.X 比较稳定 功能足够用;
所以还是用2.X版本;
我们新建一个Maven项目,
pom.xml里引入 ehcache支持;
<dependency> <groupId>net.sf.ehcache</groupId> <artifactId>ehcache</artifactId> <version>2.10.3</version> </dependency>
ehcache.xml配置文件
<?xml version="1.0" encoding="UTF-8"?> <ehcache> <!-- 磁盘存储:将缓存中暂时不使用的对象,转移到硬盘,类似于Windows系统的虚拟内存 path:指定在硬盘上存储对象的路径 --> <diskStore path="C:\ehcache" /> <!-- defaultCache:默认的缓存配置信息,如果不加特殊说明,则所有对象按照此配置项处理 maxElementsInMemory:设置了缓存的上限,最多存储多少个记录对象 eternal:代表对象是否永不过期 overflowToDisk:当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中 --> <defaultCache maxElementsInMemory="100" eternal="true" overflowToDisk="true"/> <cache name="a" maxElementsInMemory="100" eternal="true" overflowToDisk="true"/> </ehcache>
我们再新建一个测试类:
package com.open1111; import net.sf.ehcache.Cache; import net.sf.ehcache.CacheManager; import net.sf.ehcache.Element; public class EhcacheTest { public static void main(String[] args) { // 根据ehcache.xml配置文件创建Cache管理器 CacheManager manager=CacheManager.create("./src/main/resources/ehcache.xml"); Cache c=manager.getCache("a"); // 获取指定Cache Element e=new Element("java1234","屌"); // 实例化一个元素 c.put(e); // 把一个元素添加到Cache中 Element e2=c.get("java1234"); // 根据Key获取缓存元素 System.out.println(e2); System.out.println(e2.getObjectValue()); c.flush(); // 刷新缓存 manager.shutdown(); // 关闭缓存管理器 } }
运行输出:
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
[ key = java1234, value=屌, version=1, hitCount=1, CreationTime = 1490928074754, LastAccessTime = 1490928074764 ]
屌
目录结构:
详细讲解 请关注java1234的 一头扎进Ehcache 视频教程
上一篇:EhCache缓存框架简介
下一篇:EhCache 常用配置项详解