Hibernate4 + Ehcache 配置问题
来源:互联网 发布:南风知我意1七微书包网 编辑:程序博客网 时间:2024/05/19 01:29
COME FROM
1、遇到的问题:
- Caused by: org.hibernate.cache.NoCacheRegionFactoryAvailableException: Second-level cache is used in the application, but property hibernate.cache.region.factory_class is not given, please either disable second level cache or set correct region factory class name to property hibernate.cache.region.factory_class (and make sure the second level cache provider, hibernate-infinispan, for example, is available in the classpath).
- at org.hibernate.cache.internal.NoCachingRegionFactory.buildTimestampsRegion(NoCachingRegionFactory.java:87)
- at org.hibernate.cache.spi.UpdateTimestampsCache.<init>(UpdateTimestampsCache.java:63)
- at org.hibernate.internal.CacheImpl.<init>(CacheImpl.java:72)
- at org.hibernate.engine.spi.CacheInitiator.initiateService(CacheInitiator.java:40)
- at org.hibernate.engine.spi.CacheInitiator.initiateService(CacheInitiator.java:35)
- at org.hibernate.service.internal.SessionFactoryServiceRegistryImpl.initiateService(SessionFactoryServiceRegistryImpl.java:91)
- at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:176)
- ... 25 more
解决办法:
在网上查了资料,了解hibernate4.0在hibernate.cfg.xml配置二级缓存和hibernate3.3有所不同,本例子用的是 Hibernate-core.4.1.7.Final+ ehcache-core.2.6.0,用query的话就要配置查询缓存喽
4.0配置如下:
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property>
3.3配置如下:
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="cache.provider_class ">org.hibernate.cache.EhCacheProvider</property>
完整的二级缓存配置:配置之前先拷贝一个ehcache.xml文件到src文件下
- hibernate.cfg.xml 设定: <property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property> - @Cache注解(由hibernate扩展提供) @Cache(usage=CacheConcurrencyStrategy.READ_WRITE)
- 用load测试(二级缓存是SessionFactory级别的缓存)
需要在pom.xml中添加
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-ehcache</artifactId>
- <version>4.1.7.Final</version>
- </dependency>
否则会报错:
Unable to load class [org.hibernate.cache.ehcache.EhCacheRegionFactory]
0 0
- Hibernate4 + Ehcache 配置问题
- Hibernate4 + Ehcache 配置问题
- Hibernate4 + Ehcache 配置问题
- Hibernate4 + Ehcache 配置问题
- Hibernate4 + Ehcache 配置问题
- Hibernate4二级缓存Ehcache配置
- Spring4+Hibernate4配置Ehcache
- Spring中Hibernate4 Ehcache 配置
- spring4-hibernate4-二级缓存ehcache配置
- Hibernate4.x二级缓存详细配置步骤( EHCache)
- Hibernate4.1.4配置二级缓存EHCache步骤
- Hibernate4.1.4配置二级缓存EHCache步骤
- 使用注解配置ehcache,环境:Spring4、hibernate4
- Hibernate4 + ehcache
- Hibernate4 net.sf.ehcache.Ehcache.getCacheConfiguration错误
- struts2,hibernate4,spring3,javaee6配置问题
- Spring+Hibernate4配置使用cache的问题
- hibernate4配置
- ASP.NET 生成二维码(采用ThoughtWorks.QRCode和QrCode.Net两种方式)
- 关于解酒方法调研
- 生存计划
- 9.3星图
- LinearLayout和RelativeLayout的属性差异
- Hibernate4 + Ehcache 配置问题
- OpenGL ES之GLSurfaceView学习三:交互式的实例
- linux学习(13)配置启动挂载
- vs2010 快捷键大全
- 【03】 机器学习(Standford)笔记 L03
- 纯javascript验证,100行超精简代码。
- 中断机制和中断描述符表、中断和异常的处理
- IOS 设置NSZombieEnabled和MallocStackLogging
- android Instrumentation