一.ehcache主要是对数据库访问的缓存,相同的查询语句只需查询一次数据库,
从而提高了查询的速度,使用spring的AOP可以很容易实现这一功能.
http://ehcache.sourceforge.net/
ehcache.xml
<cache name="sampleCache1"
maxElementsInMemory="10000"
eternal="false"
timeToIdleSeconds="300"
timeToLiveSeconds="600"
overflowToDisk="true"
/>
org.springframework.cache.ehcache.EhCacheManagerFactoryBean
org.springframework.cache.ehcache.EhCacheFactoryBean
org.springframework.aop.support.RegexpMethodPointcutAdvisor
二. oscache 主要是对页面的缓存,可以整页或者指定网页某一部分缓存,同时
指定他的过期时间,这样在此时间段里面访问的数据都是一样的
1.log4j-1.2.8.jar,oscache-2.3.2.jar,commons-logging.jar,jgroups-all.jar
2.拷贝cach\etc\下的oscache.tld,oscache.properties 到WEB-INF\classes
3.web.xml
<taglib><taglib-uri>oscache</taglib-uri><taglib-location>/WEB-INF/classes/ oscache.tld</taglib-location></taglib>
<filter>
<filter-name>CacheFilter</filter-name>
<filter-class>com.opensymphony.oscache.web.filter.CacheFilter</filter-class>
<init-param>
<param-name>time</param-name>
<param-value>60</param-value>
</init-param>
<init-param>
<param-name>scope</param-name>
<param-value>session</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>CacheFilter</filter-name>
<url-pattern>/*.jsp</url-pattern>
</filter-mapping>
http://www.opensymphony.com/oscache/download.html下载Oscache的最新版本
可以使用内存、硬盘空间、同时使用内存和硬盘或者提供自己的其他资源(需要自己提供适配器)作为缓存区。
- 使用内存作为缓存区将可以提供更好的性能
- 使用硬盘作为缓存区可以在服务器重起后迅速恢复缓存内容
- 同时使用内存和硬盘作为缓存区则可以减少对内存的占用