配置:
一.在src目录下加入ehcache.xml:
<
cache
name
=
"SimplePageCachingFilter"
maxElementsInMemory
=
"10"
maxElementsOnDisk
=
"10"
eternal
=
"false"
overflowToDisk
=
"true"
diskSpoolBufferSizeMB
=
"20"
timeToIdleSeconds
=
"10"
timeToLiveSeconds
=
"10"
memoryStoreEvictionPolicy
=
"LFU"
/>
在使用ehcache
的页面缓存之前,我们必须要了解ehcache
的几个概念,
1 timeToIdleSeconds
,多长时间不访问该缓存,那么ehcache
就会清除该缓存。
2 timeToLiveSeconds
,缓存的存活时间,从开始创建的时间算起。
SimplePageCachingFilter
是缓存的名字,maxElementsInMemory
表示内存中SimplePageCachingFilter
缓存中元素的最大数量为10
,maxElementsOnDisk
是指持久化该缓存的元素到硬盘上的最大数量也为10
(),eternal=false
意味着该缓存会死亡。overflowToDisk=true
意思是表示当缓存中元素的数量超过限制时,就把这些元素持久化到硬盘,如果overflowToDisk
是false
,那么maxElementsOnDisk
的设置就没有什么意义了。memoryStoreEvictionPolicy=LFU
是指按照缓存的hit
值来清除,也就是说缓存满了之后,新的对象需要缓存时,将会将缓存中hit
值最小的对象清除出缓存,给新的对象腾出地方来了。
ehcache
中缓存的3
种清空策略:
1 FIFO
,first in first out
,这个是大家最熟的,先进先出,不多讲了
2 LFU
, Less Frequently Used
,就是上面例子中使用的策略,直白一点就是讲一直以来最少被使用的。如上面所讲,缓存的元素有一个hit
属性,hit
值最小的将会被清出缓存。
3 LRU
,Least Recently Used
,最近最少使用的,缓存的元素有一个时间戳,当缓存容量满了,而又需要腾出地方来缓存新的元素的时候,那么现有缓存元素中时间戳离当前时间最远的元素将被清出缓存。
二.web.xml
<filter></filter>《filter》
《filter-name》indexCacheFilter《/filter-name》
《filter-class》
net.sf.ehcache.constructs.web.filter.SimplePageCachingFilter
《/filter-class》
《/filter》
《filter-mapping》
《filter-name》indexCacheFilter《/filter-name》
《url-pattern》/search/companySearch.action?actionName=companySearch《/url-pattern》
《/filter-mapping》
三。hbm.xml
《 cache usage="read-only"? /》
四。impl.java
Query q1 = this.getSession().createQuery(hql.toString()).setFirstResult(0).setMaxResults(10)
.setCacheable(true)
.
setCacheRegion("
SimplePageCachingFilter
");
setCacheable(true):查询的结果需要缓存起来。
setCacheRegion():指用ehcache.xml里的命名为
SimplePageCachingFilter的
缓存条目。
其他的页面不需要做任何的设置就可以使用了。。而且在缓存期间就不会出现大块的sql执行了。。。哈哈。。任务完成。
分享到:
相关推荐
### ehcache配置使用详解 #### 一、ehcache概述与特性 **背景介绍:** 缓存作为提升系统响应速度和降低数据库压力的关键技术,在现代软件架构中占据着重要位置。ehcache,作为一款高性能的开源Java缓存框架,旨在...
ehcache是一种广泛使用的Java缓存框架,用于提高应用程序性能,特别是在数据访问操作中。通过将数据存储在内存中,ehcache能够显著减少数据库查询次数,从而加快应用响应速度。本文将深入探讨ehcache.xml配置文件中...
**二、Ehcache配置与使用** 1. **配置**: Ehcache的配置文件通常为`ehcache.xml`,其中定义了各个缓存区的配置参数,如缓存大小、存活时间、磁盘路径等。 2. **API集成**: 在Java项目中,可以通过Ehcache提供的API...
`RuntimeMessage.java`可能是一个包含运行时消息处理的类,与Ehcache缓存的具体实现关系不大,但可能在实际应用中与缓存配合使用,例如处理缓存未命中时的异常情况。 至于`ehcache.jar`,它是Ehcache的库文件,包含...
**Ehcache 使用详解与集群配置** Ehcache 是一个广泛使用的开源Java缓存系统,它提供了内存和磁盘存储,以及对缓存数据的分布式处理能力。在Java应用程序中,Ehcache能够显著提高性能,减少数据库负载,通过缓存...
最后,启动多个应用实例,每个实例都会使用其对应的EhCache配置,并通过配置的网络信息与其他实例建立连接,形成缓存集群。这样,当在一个实例中更新缓存时,更新会被广播到其他实例,确保所有节点上的缓存保持一致...
三、EhCache配置文件详解 EhCache的配置主要通过`ehcache.xml`文件进行。以下是一些关键配置元素: 1. `<cache>`元素:定义一个缓存区域,包括缓存名称、最大元素数、内存和磁盘存储策略等。例如: ```xml ...
接着,我们需要创建一个Ehcache配置文件(ehcache.xml),定义缓存策略和缓存区域。例如: ```xml <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation=...
Hibernate+EhCache 配置及使用说明详解 EhCache 是 Hibernate 的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力。 EhCache 的使用注意点: ...
**EHCache的使用随记** EHCache是一款广泛应用于Java环境中的高效、易用且功能丰富的内存缓存系统。它能够显著提升应用性能,通过将常用数据存储在内存中,避免了反复从数据库读取,降低了I/O延迟。本文将探讨...
### Spring与ehcache结合使用详解 #### 一、前言 在现代软件开发中,缓存技术被广泛应用于提高应用程序的性能。其中,Spring框架因其灵活性和强大的功能,在Java领域得到了广泛应用;而ehcache作为一款高性能、...
ehcache 缓存配置详解 Ehcache 是一个流行的 Java 缓存框架,提供了强大的缓存机制,帮助开发者提高应用程序的性能和可扩展性。 Ehcache 的配置主要包括 diskstore、defaultCache、cache 三个部分,这三个部分的...
2. **Ehcache配置**: - 使用`CacheManager`来初始化和管理缓存。可以使用多种方式创建`CacheManager`实例,如`CacheManager.create()`、`CacheManager.getInstance()`等,或者指定配置文件的位置。 3. **操作缓存...
Ehcache 是一个强大且灵活的缓存解决方案,通过合理的配置和使用,可以在Java应用中显著提升性能。了解其配置、原理以及如何在实际项目中应用,有助于我们更好地利用缓存机制,为用户提供更快速、更高效的体验。在...
2. Ehcache配置: - 配置文件:Ehcache通常使用XML文件进行配置,例如`ehcache.xml`。这个文件定义了缓存管理器、缓存的大小、缓存策略等。 - `<cache>`元素:定义一个缓存,包括其名称、大小限制、过期策略等属性...
在进行EhCache配置之前,我们需要在项目中添加EhCache的依赖。在`pom.xml`文件中加入以下依赖: ```xml <groupId>net.sf.ehcache</groupId> <artifactId>ehcache ``` Spring Boot自动管理EhCache版本,无需...
EHCAHCE基于JGROUP的集群配置方案,内含相关配置文件,及配置说明
【标题解析】:“ehcache.xsd_ehcache.xml代码提示.rar”这个标题表明这是一个与Ehcache缓存系统相关的资源包,主要目的是为Ehcache的配置文件ehcache.xml提供代码提示功能。Ehcache是一个广泛使用的开源Java缓存...
2. **配置 Ehcache**: 创建一个名为 `ehcache.xml` 的配置文件,定义缓存策略、大小限制等。例如: ```xml <ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation=...
**Ehcache配置** Ehcache的配置主要通过XML文件进行,以下是一些关键配置元素: 1. **** 元素: 定义一个具体的缓存实例,包括其名称、大小限制、过期策略等属性。例如: ```xml <!-- additional configuration...