EhCache HelloWorld实现

来源:互联网 发布:数据库工程师招聘 编辑:程序博客网 时间:2024/06/05 20:59

我们新建一个Maven项目,

pom.xml里引入 ehcache支持;

1
2
3
4
5
<dependency>
    <groupId>net.sf.ehcache</groupId>
    <artifactId>ehcache</artifactId>
    <version>2.10.3</version>
</dependency>

ehcache.xml配置文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?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.justin.hello;import net.sf.ehcache.Cache;import net.sf.ehcache.CacheManager;import net.sf.ehcache.Element;/** * ehcache缓存框架使用 * @author Administrator * */public class EhcacheTest {public static void main(String[] args) {//通过管理管理器读取缓存配置CacheManager manager=CacheManager.create("./src/main/resources/ehcache.xml");//获取指定的缓存Cache cache=manager.getCache("aaa");//实例化一个元素Element element=new Element("justin====","茅台镇酱香酒");//添加元素到缓存中cache.put(element);//根据key值获取缓存元素Element element2=cache.get("justin====");System.out.println(element2);System.out.println(element2.getObjectValue());        Element element3=cache.get("justin");System.out.println(element3);System.out.println(element3.getObjectValue());//刷新缓存cache.flush();//关闭缓存管理器manager.shutdown();}}

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"/>       <!--         maxElementsInMemory设置成1,overflowToDisk设置成true,只要有一个缓存元素,就直接存到硬盘上去        eternal设置成true,代表对象永久有效        maxElementsOnDisk设置成0 表示硬盘中最大缓存对象数无限大        diskPersistent设置成true表示缓存虚拟机重启期数据      -->     <cache       name="aaa"      maxElementsInMemory="1"       eternal="true"      overflowToDisk="true"       maxElementsOnDisk="0"      diskPersistent="true"/> </ehcache>



0 0
原创粉丝点击