在Hibernate版本3.X中,可以在hibernate.cfg中配置2级缓存,如下所示:
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property>
在版本4.3.0中,EhCacheProvider
包中没有类org.hibernate.cache
。
这种情况的解决方法是什么?
由于
答案 0 :(得分:2)
第1步 添加EHcache依赖
Hibernate附带ehcache库
1.1] Maven依赖
在您的应用程序中为Ehcache添加maven依赖
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache</artifactId>
<version>[2.0.0]</version>
<type>pom</type>
</dependency>
1.2]下载Jar文件
如果您不使用maven依赖项,可以从 Download URL 下载jars文件
将此jar文件添加到lib目录和项目CLASSPATH
。
第2步 配置EhCache
要配置ehcache,您需要执行两个步骤:
2.1]配置Hibernate进行二级缓存
<property key="hibernate.cache.use_second_level_cache">true</property>
2.2]指定二级缓存提供程序
Hibernate 3.3及以上
<property name="hibernate.cache.region.factory_class">net.sf.ehcache.hibernate.EhCacheRegionFactory</property>
Hibernate 3.2及以下
<property name="hibernate.cache.region.provider_class">net.sf.ehcache.hibernate.EhCacheProvider</property>
希望这会对你有帮助!
答案 1 :(得分:1)
在你的pom中添加以下依赖性。
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.1.9.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-ehcache</artifactId>
<version>4.1.9.Final</version>
<exclusions>
<exclusion>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-core</artifactId>
</exclusion>
</exclusions>
</dependency>
请参阅此链接:https://dzone.com/articles/hibernate-4-and-ehcache-higher