如果您使用 Hibernate JPA 实现,您应该在您的 persistence.xml 中提供以下属性:
<property name="hibernate.cache.region.factory_class" value="net.sf.ehcache.hibernate.SingletonEhCacheRegionFactory" />
然后你的类路径中应该有以下 jars(对于 terracotta 版本 3.6.5 - 与 JDK5 兼容的最后一个版本):
- ehcache-core-ee-2.5.6.jar
- ehcache-terracotta-ee-2.5.6.jar
- terracotta-toolkit-1.5-runtime-ee-4.5.0.jar
此外,您必须确保您的类路径中没有任何其他 ehcache jar。
如果你使用 Maven,那么:
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-core-ee</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>net.sf.ehcache</groupId>
<artifactId>ehcache-terracotta-ee</artifactId>
<version>2.5.6</version>
</dependency>
<dependency>
<groupId>org.terracotta</groupId>
<artifactId>terracotta-toolkit-1.5-runtime-ee</artifactId>
<version>4.5.0</version>
</dependency>
另外不要忘记指向 terracotta 的 maven 存储库以下载所需的 jar:
<repository>
<id>terracotta-repository</id>
<url>http://www.terracotta.org/download/reflector/releases</url>
<releases>
<enabled>true</enabled>
</releases>
</repository>