[英]ehcache hibernate 4
In my application I use the hibernate-core-4.1.8 jar and would like to take an ehCache as 2nd level cache.在我的应用程序中,我使用 hibernate-core-4.1.8 jar 并希望将 ehCache 作为二级缓存。 The jar I am currently using is ehcache-core-2.5.0.我目前使用的 jar 是 ehcache-core-2.5.0。 I placed it in my WebContetn/WEB-INF/lib folder and put it in the classpath too.我将它放在我的 WebContetn/WEB-INF/lib 文件夹中,并将它也放在类路径中。
My hibernate.cfg.xml looks like this:我的 hibernate.cfg.xml 看起来像这样:
<hibernate-configuration>
<session-factory>
....
<property name="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.EhCacheRegionFactory</property>
<property name="hibernate.cache.use_second_level_cache">true</property>
<property name="hibernate.cache.use_query_cache">true</property>
</session-factory>
</hibernate-configuration>
the ehcache.xml which is placed in the JavaResources/src folder:位于 JavaResources/src 文件夹中的 ehcache.xml:
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="ehcache.xsd" updateCheck="true"
monitoring="autodetect" dynamicConfig="true">
<defaultCache
maxElementsInMemory="100000"
eternal="false"
timeToIdleSeconds="1000"
timeToLiveSeconds="1000"
overflowToDisk="false"
/>
</ehcache>
When running my application the class org.hibernate.cache.ehcache.EhCacheRegionFactory is not found:运行我的应用程序时,找不到类 org.hibernate.cache.ehcache.EhCacheRegionFactory:
java.lang.ClassNotFoundException: Could not load requested class : org.hibernate.cache.ehcache.EhCacheRegionFactory
at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl$1.findClass(ClassLoaderServiceImpl.java:99)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.hibernate.service.classloading.internal.ClassLoaderServiceImpl.classForName(ClassLoaderServiceImpl.java:138)
at org.hibernate.cfg.SettingsFactory.createRegionFactory(SettingsFactory.java:444)
at org.hibernate.cfg.SettingsFactory.buildSettings(SettingsFactory.java:275)
at org.hibernate.cfg.Configuration.buildSettingsInternal(Configuration.java:2283)
at org.hibernate.cfg.Configuration.buildSettings(Configuration.java:2279)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1748)
at creator.controllers.MyFactory.<clinit>(MyFactory.java:18)
at creator.controllers.SchoolDAO.getList(SchoolDAO.java:98)
.....
you need to include hibernate-ehcache.jar
by downloading it or is you're using maven put it in your dependencies like this 您需要通过下载来包含hibernate-ehcache.jar
,或者您正在使用maven将它放在您的依赖项中
<dependency>
<artifactId>hibernate-ehcache</artifactId>
<groupId>org.hibernate</groupId>
<version>4.0.0.CR6</version>
</dependency>
您需要检查您的hibernate version
并且您必须使用相同版本的hibernate-ehcache
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.