有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在JBoss 4.2上使用JPA启用Hibernate二级缓存

当使用Java持久性API(带注释的实体)时,启用Hibernate的二级缓存需要哪些步骤?我如何检查它是否工作?我正在使用JBoss4.2.2。GA

我需要从em文档中指定一个缓存来启用持久性。xml,例如:

<property name="hibernate.cache.use_second_level_cache"
          value="true" /> 
<property name="hibernate.cache.provider_class" 
          value="org.hibernate.cache.HashtableCacheProvider" /> 

还需要什么?我是否需要向我的JPA实体添加@Cache注释

如何判断缓存是否正常工作?我尝试在运行查询后访问缓存统计信息,但是统计信息。getSecondLevelCacheStatistics返回null,可能是因为我不知道使用哪个“区域”名称


共 (2) 个答案

  1. # 1 楼答案

    我认为您需要添加缓存注释来告诉hibernate如何使用二级缓存(只读、读写等)。我的应用程序就是这样(使用spring/传统的hibernate和ehcache,因此您的里程数可能会有所不同)。一旦指示了缓存,我就开始从hibernate看到它们正在使用的消息

  2. # 2 楼答案

    跟进:最后,在添加注释后,我让它与EhCache一起工作,即

    <property name="hibernate.cache.provider_class" 
              value="net.sf.ehcache.hibernate.EhCacheProvider" />