Java中 ehcache简单使用实例

ehcache 简单实用介绍 Java中常用的本地缓存,入门级文章。
将数据缓存至本地的简单方法。简单实用的java 本地缓存框架。

使用步骤:
1、添加jar包 

2、在src下添加配置文件 ehcache.xml  

ehcache 可以将缓存的数据存储在内存中,也可以存储在磁盘中,也可以两者都存,

  
    
    
    
配置文件介绍

nameCache的唯一标识 

maxElementsInMemory:内存中最大缓存对象数。 

maxElementsOnDisk:磁盘中最大缓存对象数,若是0表示无穷大。 

eternalElement是否永久有效,一但设置了,timeout将不起作用。 

overflowToDisk:配置此属性,当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中。 

timeToIdleSeconds:设置Element在失效前的允许闲置时间。仅当element不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。 

timeToLiveSeconds:设置Element在失效前允许存活时间。最大时间介于创建时间和失效时间之间。仅当element不是永久有效时使用,默认是0.,也就是element存活时间无穷大。 

diskPersistent:是否缓存虚拟机重启期数据。 

diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。 

diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。 

memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)、FIFO(先进先出)、LFU(最不经常使用算法)。


3、代码中使用即可

1、存储、读取使用

public class MyEhcache {


    public static void main(String[] args) {
        MyEhcache eh=new MyEhcache();
        EhcacheBean bean1=new EhcacheBean(1,"aaa",2);
        CacheManager manager = CacheManager.create(eh.getClass().getClassLoader().getResource("").getPath()+"/ehcache.xml");  
        Cache demo = manager.getCache("demoCache");  
        demo.put(new Element(bean1.getId(),bean1));
        Element e=demo.get(bean1.getId());
        System.out.println(((EhcacheBean)e.getValue()).getName());
    }

}
2、缓存数据可以实例化至磁盘中,程序重启、宕机等情况下,可以继续使用

若要使工程重启时不影响缓存的数据,应该将数据实例化,修改配置文件中的diskPersistent属性,并且在重启前调用ehcache.flush()方法强制将所有数据实例化到硬盘中,即可在重启工程后继续使用缓存数据。





你可能感兴趣的:(java)