`
jie66989
  • 浏览: 254860 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

ehcache配置

阅读更多
参考博文地址:http://blog.csdn.net/hnzhangshilong/article/details/6689675

注意:有时候测试的时候,明明加了缓存了,但是就是缓存不成功,这时候需要注意,对应dao是怎么获得的,是否为一个实例,如果每次都是新new一个对象也会出现缓存不成功。
http://bbs.csdn.net/topics/320180848

使用ehcache配置hibernate缓存策略
实体bean注解配置:
@Entity
@Table(name = "consumer", catalog = "cdr_busines")// 对应cdr_busines数据库中的consumer表
@org.hibernate.annotations.Cache
(usage=CacheConcurrencyStrategy.READ_WRITE)// 读写缓存

这里需要注意,当实体类中包含集合的时候,需要在集合的get方法上面添加@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)注解,关联的也得添加,要不然也不能缓存此对象以及对象集合



spring配置hibernateproperties文件中的配置信息:
<prop key="hibernate.cache.use_second_level_cache">true</prop>
                <prop key="hibernate.cache.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</prop>
                <prop key="hibernate.cache.use_query_cache">true</prop>
                <prop key="hibernate.cache.provider_configuration_file_resource_path">ehcache.xml</prop>


以上配置就可以实现ehcache的缓存
但是不缓存集合结果,如果需要缓存集合结果需要在session,createQuery(hql)的返回值org.hibernate.Query设置.setCacheable(true)来开启查询集合缓存

ehcache.xml
<?xml version="1.0" encoding="UTF-8"?>
<ehcache name="CdrCache">
需要配置diskStore
  <diskStore path="java.io.tmpdir"/>
  <defaultCache
      maxElementsInMemory="10000"
      eternal="false"
      timeToIdleSeconds="120"
      timeToLiveSeconds="120"
      overflowToDisk="true"
      diskPersistent="false"
      diskExpiryThreadIntervalSeconds="120"
      memoryStoreEvictionPolicy="LRU"/>
  <cache name="colors"
         maxElementsInMemory="100"
         eternal="false"
         timeToIdleSeconds="120"
         timeToLiveSeconds="0"
         memoryStoreEvictionPolicy="LFU">
  </cache>
</ehcache>

<!--
• name:Cache的唯一标识
• maxElementsInMemory:内存中最大缓存对象数。
• maxElementsOnDisk:磁盘中最大缓存对象数,若是0表示无穷大。
• eternal:Element是否永久有效,一但设置了,timeout将不起作用。
• overflowToDisk:配置此属性,当内存中Element数量达到maxElementsInMemory时,Ehcache将会Element写到磁盘中。
• timeToIdleSeconds:设置Element在失效前的允许闲置时间。仅当element不是永久有效时使用,可选属性,默认值是0,也就是可闲置时间无穷大。
• timeToLiveSeconds:设置Element在失效前允许存活时间。最大时间介于创建时间和失效时间之间。仅当element不是永久有效时使用,默认是0.,也就是element存活时间无穷大。
• diskPersistent:是否缓存虚拟机重启期数据。(这个虚拟机是指什么虚拟机一直没看明白是什么,有高人还希望能指点一二)。
• diskExpiryThreadIntervalSeconds:磁盘失效线程运行时间间隔,默认是120秒。
• diskSpoolBufferSizeMB:这个参数设置DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区。
• memoryStoreEvictionPolicy:当达到maxElementsInMemory限制时,Ehcache将会根据指定的策略去清理内存。默认策略是LRU(最近最少使用)。你可以设置为FIFO(先进先出)或是LFU(较少使用)。这里比较遗憾,Ehcache并没有提供一个用户定制策略的接口,仅仅支持三种指定策略,感觉做的不够理想。
-->

地址: http://jie66989.iteye.com/blog/1699656
分享到:
评论

相关推荐

    ehcache配置使用详解

    ### ehcache配置使用详解 #### 一、ehcache概述与特性 **背景介绍:** 缓存作为提升系统响应速度和降低数据库压力的关键技术,在现代软件架构中占据着重要位置。ehcache,作为一款高性能的开源Java缓存框架,旨在...

    集群环境中使用_EhCache_缓存系统&Ehcache配置文件的详细说明

    三、EhCache配置文件详解 EhCache的配置主要通过`ehcache.xml`文件进行。以下是一些关键配置元素: 1. `&lt;cache&gt;`元素:定义一个缓存区域,包括缓存名称、最大元素数、内存和磁盘存储策略等。例如: ```xml ...

    ehcache配置文件

    ehcache配置文件里面有大量注解方便解读和理解湖北卫视 2018-10-26 2018-10-26 黄鹤楼酒违法 一般违法 50

    ehcache配置拦截器缓存页面

    接下来,我们需要创建一个Ehcache配置文件,例如ehcache.xml,定义缓存的属性,如大小、存活时间等。例如: ```xml &lt;config xmlns="http://www.ehcache.org/v3"&gt; &lt;key-type&gt;java.lang.String &lt;value-type&gt;java....

    EHCache配置

    **EHCache配置详解** EHCache是一款广泛应用于Java环境中的开源分布式缓存系统,它能够显著提升应用程序的性能和响应速度,特别是在数据访问密集型的应用场景中。本文将深入探讨EHCache的配置细节,帮助开发者更好...

    ehcache的配置参数详解

    本文将深入探讨ehcache.xml配置文件中的关键参数及其作用,帮助开发者更有效地管理和优化缓存策略。 ### 1. `defaultCache` 标签 `defaultCache` 是ehcache.xml中一个重要的标签,用于定义所有未显式指定缓存策略...

    Hibernate+EhCache配置及使用说明详解

    Hibernate+EhCache 配置及使用说明详解 EhCache 是 Hibernate 的二级缓存技术之一,可以把查询出来的数据存储在内存或者磁盘,节省下次同样查询语句再次查询数据库,大幅减轻数据库压力。 EhCache 的使用注意点: ...

    Ehcache配置指南

    上述内容仅为Ehcache配置指南的概述,为了掌握Ehcache的详细配置和使用,开发者需要深入阅读官方文档和相关的技术指南,并根据自己的应用场景进行实践和调整。Ehcache的配置灵活性和强大的功能,使其在处理大数据量...

    Spring Boot 2.x基础教程:使用EhCache缓存集群.docx

    最后,启动多个应用实例,每个实例都会使用其对应的EhCache配置,并通过配置的网络信息与其他实例建立连接,形成缓存集群。这样,当在一个实例中更新缓存时,更新会被广播到其他实例,确保所有节点上的缓存保持一致...

    EHCACHE集群配置-JGroup篇

    EHCAHCE基于JGROUP的集群配置方案,内含相关配置文件,及配置说明

    ehcache基本原理及配置

    **Ehcache配置** Ehcache的配置主要通过XML文件进行,以下是一些关键配置元素: 1. **** 元素: 定义一个具体的缓存实例,包括其名称、大小限制、过期策略等属性。例如: ```xml &lt;!-- additional configuration...

    ehcache缓存的jar包和配置文件

    2. Ehcache配置: - 配置文件:Ehcache通常使用XML文件进行配置,例如`ehcache.xml`。这个文件定义了缓存管理器、缓存的大小、缓存策略等。 - `&lt;cache&gt;`元素:定义一个缓存,包括其名称、大小限制、过期策略等属性...

    EHCache 配置说明

    - 配置 Spring 参数:在 Spring 的配置文件中,声明并配置 Ehcache 的 Bean,以便 Spring 管理 Ehcache。 4.7. 客户端使用 客户端可以通过 Spring 注入的 Cache Manager 实例,透明地进行缓存操作,提高代码的...

    基于ssm框架配置ehcache

    里面有jar,ssm框架,以及ehcache的配置,照着改成自己的就可以,注意不要用实体类传入参数,不懂的看我博客

    Spring 使用注解配置使用ehcache

    接着,我们需要创建一个Ehcache配置文件(ehcache.xml),定义缓存策略和缓存区域。例如: ```xml &lt;ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation=...

    Ehcache集群环境配置

    ### Ehcache集群环境配置 #### 一、Ehcache简介 Ehcache 是一款开源的高性能 Java 缓存框架,广泛应用于 Java 应用程序中,以提高应用程序性能。其核心设计采用三层类层次结构,主要包括 CacheManager、Cache 和 ...

    ehcache缓存的配置

    #### 二、ehcache配置文件结构 ehcache 的配置主要通过 XML 文件实现,通常命名为 `ehcache.xml`,放置于项目的类路径(classpath)下。以下是一个典型的 `ehcache.xml` 配置示例: ```xml &lt;ehcache xmlns:xsi=...

    Ehcache(2): Ehcache实例在Eclipse中的配置 改进

    综上所述,Ehcache在Eclipse中的配置涉及到对Hibernate的设置、Ehcache配置文件的编写以及缓存策略的调整。理解这些知识点有助于我们在Java开发中更高效地利用缓存技术,提升系统的响应速度和整体性能。

Global site tag (gtag.js) - Google Analytics