EhCache缓存框架

EhCache纯java的内存缓存框架

缓存的速度比较快,比数据库还要快,所以一般可以用户判断重复的数据或url

Maven引入ehcache的jar包

 <dependencies>
  	
  	<dependency>
	    <groupId>net.sf.ehcache</groupId>
	    <artifactId>ehcache</artifactId>
	    <version>2.10.3</version>
	</dependency>
  	
  </dependencies>

ehcache配置文件

ehcache.xml

配置持久化硬盘

<?xml version="1.0" encoding="UTF-8"?>
 
<ehcache>
   <!-- 
         磁盘存储:将缓存中暂时不使用的对象,转移到硬盘,类似于Windows系统的虚拟内存
          path:指定在硬盘上存储对象的路径
   -->
   <diskStore path="C:\ehcache" />
    
   <!-- 
        defaultCache:默认的缓存配置信息,如果不加特殊说明,则所有对象按照此配置项处理
        maxElementsInMemory:设置了缓存的上限,最多存储多少个记录对象
        eternal:true代表对象是否永不过期
        overflowToDisk:当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中
   -->
   <defaultCache
      maxElementsInMemory="100"
      eternal="true"
      overflowToDisk="true"/>
 
     
    <!-- 
        maxElementsInMemory设置成1,overflowToDisk设置成true,只要有一个缓存元素,就直接存到硬盘上去,断电保护
        eternal设置成true,代表对象永久有效
        maxElementsOnDisk设置成0 表示硬盘中最大缓存对象数无限大
        diskPersistent设置成true表示缓存虚拟机重启期数据 
     -->
    <cache 
      name="a"
      maxElementsInMemory="1" 
      eternal="true"
      overflowToDisk="true" 
      maxElementsOnDisk="0"
      diskPersistent="true"/>
 
</ehcache>
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("java","xx");//cache存元素
		c.put(e); // 把一个元素添加到Cache中
		
		Element e2=c.get("java"); // 根据key获取缓存元素
		System.out.println(e2);
		System.out.println(e2.getObjectValue());
		
		c.flush(); // 刷新缓存到内存或硬盘中
		manager.shutdown(); // 关闭缓存管理器释放内存
		
	}
}

猜你喜欢

转载自blog.csdn.net/qq_35029061/article/details/81811985