gpt4 book ai didi

hibernate - EHCache, hibernate Terracotta 版本

转载 作者:行者123 更新时间:2023-12-02 03:50:35 27 4
gpt4 key购买 nike

我有一个运行 Hibernate 4.1.7 的应用程序,并且正在使用 ehcache 作为 2 级缓存。我知道从 Hibernate 4 开始,我需要使用与 hibernate 捆绑在一起的 ehcache jar ,但这些 jar 已经很旧了。

目前最新的ehcache版本是2.6.3,而hibernate 4.1.7自带的版本是2.4.3。问题是 hibernate 没有与 ehcache-terracotta jar 捆绑在一起,而我的 terracotta 服务器与 ehcache-hibernate 2.6.2 jar 捆绑在一起,因为它是 terracotta 的最新工作版本。我正在努力让我的应用程序连接到我的 terracotta 服务器并假设这是因为我的版本不匹配。

如何让 hibernate(版本 2.4.3)使用我的 ehcache 来连接我的 terracotta 服务器以适应 ehcache 版本 2.6.2?

请帮忙

最佳答案

如果您使用 Hibernate JPA 实现,您应该在 persistence.xml 中提供以下属性:

<property name="hibernate.cache.region.factory_class" value="net.sf.ehcache.hibernate.SingletonEhCacheRegionFactory" />

那么你的类路径中应该有以下 jar(对于 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>

关于hibernate - EHCache, hibernate Terracotta 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14504507/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com