3.2.2.10. 用 Infinispan 替换 JPA/Hibernate 二级缓存
介绍
对于二级缓存(2LC)而言,JBoss Cache 已经被 Infinispan 所替代。这要求修改 persistence.xml 文件。其语法稍有不同,这取决于您使用 JPA 还是 Hibernate 二级缓存。下面的例子假设您在使用 Hibernate.。
这是 JBoss EAP 5.x 里用
Copy to Clipboard
Copied!
Toggle word wrap
Toggle overflow
下面的步骤将使用这个例子来配置 JBoss EAP 6 里的 Infinispan。
persistence.xml 文件指定二级缓存属性的例子。
过程 3.16. 修改 persistence.xml 文件以使用 Infinispan
为 JBoss EAP 6 里的 JPA 应用程序配置 Infinispan
这是如何用 JBoss EAP 6 里的 Infinispan 来指定属性以实现用于 JPA 应用程序的相同配置:此外,您需要指定一个值为<property name="hibernate.cache.use_second_level_cache" value="true"/>
<property name="hibernate.cache.use_second_level_cache" value="true"/>Copy to Clipboard Copied! Toggle word wrap Toggle overflow ENABLE_SELECTIVE或ALL的shared-cache-mode:ENABLE_SELECTIVE是默认的推荐值。它表示实体不会被缓存,除非您显性地将它标记为可缓存的。<shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>
<shared-cache-mode>ENABLE_SELECTIVE</shared-cache-mode>Copy to Clipboard Copied! Toggle word wrap Toggle overflow ALL表示实体总是被缓存,即使您将其标记为不可缓存的。<shared-cache-mode>ALL</shared-cache-mode>
<shared-cache-mode>ALL</shared-cache-mode>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
为 JBoss EAP 6 里的原生 Hibernate 应用程序配置 Infinispan
这是如何用 JBoss EAP 6 里的 Infinispan 来指定用于原生 Hibernate 应用程序的相同配置:您也必须将下列依赖关系添加至Copy to Clipboard Copied! Toggle word wrap Toggle overflow MANIFEST.MF文件:Manifest-Version: 1.0 Dependencies: org.infinispan, org.hibernate
Manifest-Version: 1.0 Dependencies: org.infinispan, org.hibernateCopy to Clipboard Copied! Toggle word wrap Toggle overflow
关于 Hibernate 缓存属性的更多信息,请参考: 第 3.2.2.11 节 “Hibernate Cache 属性”。