引入的Jar包如下:

aaarticlea/png;base64,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" alt="" />

  1. <!-- 配置hibernate session工厂 -->
  2. <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
  3. <property name="dataSource" ref="dataSource" />
  4. <property name="hibernateProperties">
  5. <props>
  6. <!-- 设置Hibernate方言 -->
  7. <prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
  8. <!-- 是否打印sql -->
  9. <prop key="hibernate.show_sql">false</prop>
  10. <!-- 格式化sql -->
  11. <prop key="hibernate.format_sql">false</prop>
  12. <!-- 是否自动更新表 -->
  13. <prop key="hibernate.hbm2ddl.auto">update</prop>
  14.  
  15.           <!-- hibernate4配置 hibernate.cache.region.factory_class -->
  16.           <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>
  17.           <!-- hibernate3配置 hibernate.cache.provider_class -->
  18. <!-- <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop> -->
  19. <prop key="hibernate.cache.use_second_level_cache">true</prop>
  20. <prop key="hibernate.cache.use_query_cache">true</prop>
  21. <prop key="hibernate.jdbc.batch_size">100</prop>
  22. </props>
  23. </property>
  24. ....
  25. </bean>

这里要特别注意一下的就是:如果是hibernate4,配置

  1.           <!-- hibernate4配置 hibernate.cache.region.factory_class -->
  2.           <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</prop>

            如果是hibernate3,配置

  1.           <!-- hibernate3配置 hibernate.cache.provider_class -->
  2. <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop>

我开始时同时设置了这两个总是报这种类找不到的错误

下面是ehcache.xml

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <ehcache>
  3. <!-- -->
  4. <diskStore path="E:/SSHBoot/cache" />
  5. <defaultCache maxElementsInMemory="10000" eternal="false"
  6. overflowToDisk="true" timeToIdleSeconds="120" timeToLiveSeconds="180"
  7. diskPersistent="false" diskExpiryThreadIntervalSeconds="60" />
  8.  
  9. <cache name="org.hibernate.cache.StandardQueryCache"
  10. maxElementsInMemory="10000" eternal="false" timeToIdleSeconds="300"
  11. timeToLiveSeconds="4200" overflowToDisk="true" />
  12.  
  13. <cache name="org.hibernate.cache.UpdateTimestampsCache"
  14. maxElementsInMemory="5000" eternal="true" timeToIdleSeconds="0"
  15. timeToLiveSeconds="0" overflowToDisk="false" />
  16. </ehcache>

Srping整合EhCache的更多相关文章

  1. [原创]mybatis中整合ehcache缓存框架的使用

    mybatis整合ehcache缓存框架的使用 mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓 ...

  2. Spring整合Ehcache管理缓存

    前言 Ehcache 是一个成熟的缓存框架,你可以直接使用它来管理你的缓存. Spring 提供了对缓存功能的抽象:即允许绑定不同的缓存解决方案(如Ehcache),但本身不直接提供缓存功能的实现.它 ...

  3. Spring整合Ehcache管理缓存(转)

    目录 前言 概述 安装 Ehcache的使用 HelloWorld范例 Ehcache基本操作 创建CacheManager 添加缓存 删除缓存 实现基本缓存操作 缓存配置 xml方式 API方式 S ...

  4. shiro整合ehcache

    目标:让Shiro整合ehcache,提供缓存realm数据的功能. 1.引入encache配置文件,配置缓存 <!-- <ehcache xmlns:xsi="http://w ...

  5. mybatis_15整合ehcache

    3.4 整合ehcache Mybatis本身是一个持久层框架,它不是专门的缓存框架,所以它对缓存的实现不够好,不能支持分布式. Ehcache是一个分布式的缓存框架. 什么是分布式 系统为了提高性能 ...

  6. 7.4mybatis整合ehcache(mybatis无法实现分布式缓存必须和其他缓存框架整合)

    <\mybatis\day02\14查询缓存-二级缓存-整合ehcache.av> mybatis的缓存机制(一级缓存二级缓存和刷新缓存)和mybatis整合ehcache-- 这里有做本 ...

  7. 使用Spring提供的缓存抽象机制整合EHCache为项目提供二级缓存

      Spring自身并没有实现缓存解决方案,但是对缓存管理功能提供了声明式的支持,能够与多种流行的缓存实现进行集成. Spring Cache是作用在方法上的(不能理解为只注解在方法上),其核心思想是 ...

  8. Spring使用Cache、整合Ehcache(转)

    今天在做Spring使用Cache.整合Ehcache时发现一篇非常好的文章,原文地址 http://elim.iteye.com/blog/2123030 从3.1开始,Spring引入了对Cach ...

  9. Spring整合EHCache框架

    在Spring中使用缓存可以有效地避免不断地获取相同数据,重复地访问数据库,导致程序性能恶化. 在Spring中已经定义了缓存的CacheManager和Cache接口,只需要实例化便可使用. Spr ...

随机推荐

  1. PKU 2155 Matrix(裸二维树状数组)

    题目大意:原题链接 题意很简单,就不赘诉了. 解题思路: 使用二维树状数组,很裸的题. 二维的写起来也很方便,两重循环. Add(int x,int y,int val)表示(x,y)-(n,n)矩形 ...

  2. cocoon + carrierwave 多图片上传用法

    gem 'cocoon' gem 'carrierwave' gem 'mini_magick' 1.图片上传carrierwave配置,github 自己手动添加的配置,没用命令生成 在app下新建 ...

  3. 斐讯面试记录—阻塞Socket和非阻塞Socket

    文章出自:http://blog.csdn.net/VCSockets/ 1.TCP中的阻塞Socket和非阻塞Socket 阻塞与非阻塞是对一个文件描述符指定的文件或设备的两种工作方式. 阻塞的意思 ...

  4. AtCoder Regular Contest 080 C - 4-adjacent

    地址:http://arc080.contest.atcoder.jp/tasks/arc080_a 题目: C - 4-adjacent Time limit : 2sec / Memory lim ...

  5. visual studio开发工具的C#主流控件属性一览表

    visual studio开发工具的C#主流控件属性一览表 详细的介绍了各控制属性的详细中文介绍 C#控件及常用设计整理 1.窗体 1.常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程 ...

  6. 二叉树的层次遍历(Java代码实现)

    与树的前中后序遍历的DFS思想不同,层次遍历用到的是BFS思想.一般DFS用递归去实现(也可以用栈实现),BFS需要用队列去实现. 层次遍历的步骤是: 1.对于不为空的结点,先把该结点加入到队列中 2 ...

  7. Python遍历字典dict的几种方法

    #!/usr/bin/python dict={"a":"apple","b":"banana","o&quo ...

  8. Objective-C 集成农行支付接口

    部分参考代码: [NANetworkHandler POSTWithURL:APP_ABCPay par:dict isStored:NO success:^(id responseObject, B ...

  9. 《面向对象的JavaScript》读书笔记

    发现了2004年出版的一本好书,用两天快速刷了一遍,草草整理了一下笔记,在此备忘. 类:对象的设计蓝图或制作配方. 对象 === 实例 :老鹰是鸟类的一个实例 基于相同的类创建出许多不同的对象,类更多 ...

  10. prometheus statsd 监控

    Prometheus是一套开源的监控&报警&时间序列数据库的组合,起始是由SoundCloud公司开发的.随着发展,越来越多公司和组织接受采用Prometheus,社会也十分活跃,他们 ...