【问题标题】:Memcached Integration with HibernateMemcached 与 Hibernate 的集成
【发布时间】:2013-08-28 07:57:06
【问题描述】:

所以每个人似乎都在使用 Hibernate 的 hibernate-memcached 实现 (https://code.google.com/p/hibernate-memcached/wiki) 作为第二层 Memcached 缓存。

我尝试将它与 Hibernate 集成,但我发现它已经过时了。例如,它依赖于旧版本的 org.slfjorg.hibernate 二进制文件(这会破坏我的 Web 服务,因为我使用的是较新的二进制文件)。但即使在构建时使用 Maven 排除这些二进制文件,它似乎也缺少hibernate.cache.region.factory_class 所需的设置实现,这可能是随着 Hibernate 的新缓存策略引入的。

简而言之,我遇到了上述错误:

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).

我猜我需要编写自己的实现吗?我只是不知道还有多少破碎的步骤。

【问题讨论】:

    标签: java hibernate memcached amazon-elasticache


    【解决方案1】:

    我知道这个帖子是旧的,但我认为,无论如何都应该回答。

    不幸的是,当前的 hibernate-memcached 版本 1.4-SNAPSHOT 仅支持 hibernate max 版本 3.6.6 如果你想和 Hibernate 4 一起使用,你应该在 github 上 fork 并自行修改。

    最新的hibernate-memcached版本在https://github.com/raykrueger/hibernate-memcached

    如果你使用 maven,这里是你的 pom.xml 的 sn-ps

    <repositories>
      <repository>
        <id>hibernate-memcached</id>
        <name>hibernate-memcached</name>
        <url>http://raykrueger.googlecode.com/svn/repository</url>
      </repository>
    </repositories>
    
    
    <dependency>
      <groupId>com.googlecode</groupId>
      <artifactId>hibernate-memcached</artifactId>
       <version>1.4-SNAPSHOT</version>
    </dependency>
    

    【讨论】:

      【解决方案2】:

      遇到了同样的问题,最终或多或少地做了 Sergey 在他的回答中描述的事情。如果其他人正在寻找这个问题的答案,你可以试试https://github.com/mihaicostin/hibernate-l2-memcached

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-07-02
        • 2013-09-29
        • 1970-01-01
        • 2015-10-21
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多