论坛首页 Java企业应用论坛

Ehcache的使用

浏览 2412 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-10-26  

Ehcache是一套比较成熟的缓存解决方案,很多主流框架像Spring,Hibernate都对其有很好的支持。且 Ehcache是支持集群环境的,API也比较简单,上手比较容易。下面就介绍一下Ehcache主要功能的使用。

 

Ehcache默认的配置文件是ehcache.xml,内容如下:

<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="ehcache.xsd">
<!-- <diskStore path="c:\\mdcp_temp" />-->
 <cacheManagerEventListenerFactory class="" properties="" />
 
 <defaultCache>
        maxElementsInMemory="10000"
        eternal="false"
        timeToIdleSeconds="600"
        overflowToDisk="false"
 </defaultCache>  

 

<cache>
        name="configCache"
        maxElementsInMemory="1000"
        maxElementsOnDisk="1000" 
        eternal="true"
        timeToIdleSeconds="300"
        timeToLiveSeconds="1000"
        overflowToDisk="false"
< /cache>


</ehcache>

 

这里配置了一个名为configCache的缓存实例。参数说明如下:
  name: 元素名称即缓存实例的名称。
  maxElementsInMemory: 设定内存中保存对象的最大值。
  overflowToDisk: 设置当内存中缓存到达maxElementsInMemory指定值时是否可以写到硬盘上。
  eternal: 设置内存中的对象是否为永久驻留对象。如果是则无视timeToIdleSeconds和timeToLiveSeconds两个属性。
  timeToIdleSeconds: 设置某个元素消亡前的停顿时间。指元素消亡之前,两次访问时间的最大时间间隔值。
  timeToLiveSeconds: 设置某个元素消亡前的生存时间。指元素从构建到消亡的最大时间间隔。
  注意:defaultCache不管用不用都是必须要配置的。

Java Code:
    //初始化
    CacheManager manager = new CacheManager(“src/config/ehcache.xml”);
    //获取指定Cache对象
    Cache configCache = manager.getCache(“configCache”);
    //创建节点对象
    Element element = new Element(“key1”,”value1”);
    //保存节点到configCache
    configCache.put(element);
    //从configCache获取节点
    Element element2 = configCache.getCache(“key1”);
    Object  value = element2.getValue();
    //更新节点
    configCache.put(new Element(“key1”,”value2”));
    //删除节点
    configCache.remove(“key1”);
    以上是Ehcache的基本使用,是不是很简单?

论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics