EhCache笔记

本文详细介绍了如何在Maven项目中利用EhCache进行页面缓存的配置和使用方法,包括缓存配置、web.xml中的过滤器设置以及缓存刷新策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

到目前为止(2013-08-07),maven-core的最新版本为 2.7.3,但不知为何mvn中央库略有延迟,最新的ehcache版本为2.7.2

pom.xml如下

<dependency>
	<groupId>net.sf.ehcache</groupId>
	<artifactId>ehcache</artifactId>
	<version>2.7.2</version>
</dependency>

这样变加入了ehcache的整合jar包(包括ehcache-core,ehcache-web等)

(ps: http://mvnrepository.com/  真是个好东西)


EhCache有多重缓存种类,常用的有orm层的二级缓存(和hibernate等搭配使用)

另外一种就是页面缓存,页面缓存分为三种,页面缓存也分多种(具体见ehcache的doc,链接地址


页面缓存的使用非常简单:

ehcache中配置(名字不能更改)

 <cache name="SimplePageCachingFilter"
           maxEntriesLocalHeap="10000"
           maxEntriesLocalDisk="10000"
           eternal="false"
           overflowToDisk="false"
           timeToIdleSeconds="60000"
           timeToLiveSeconds="60000"
           memoryStoreEvictionPolicy="LRU"
   />


web.xml中配置filter(我一般把ehcache的filter放置在第一个filter'的位置上,在位置上与urlwriter filter的前后关系主要

关乎更新缓存时的页面key值(地址不同))

<filter>
    <filter-name>SimplePageCachingFilter</filter-name>
    <filter-class>net.sf.ehcache.constructs.web.filter.SimplePageCachingFilter
    </filter-class>
  </filter>

  
  <filter-mapping>
    <filter-name>SimplePageCachingFilter</filter-name>
    <url-pattern>/index.action</url-pattern>
  </filter-mapping>

其中url-pattern为要进行页面缓存的页面,这里我们只缓存了首页,当第一次访问 /index.action时,会在缓存中加入一条记录,

key值为url, value为缓存内容:


刷新缓存的方法为:

CacheManager cacheManager = CacheManager.getInstance();
Ehcache cache = cacheManager.getEhcache("SimplePageCachingFilter");
cache.removeAll();             //删除全部缓存
cache.remove("/index.action")  //删除某一条缓存


这样,remove之后,之后重新访问,就会重新添加缓存记录,达到了更新缓存的效果


(未完待续)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值