0

有没有办法我可以完全从standalone.xml中删除infinispan的配置,并在我的persistence.xml中有如下配置:

<property name="hibernate.cache.infinispan.entity.strategy" value= "LRU" />
<property name="hibernate.cache.infinispan.entity.eviction.max_entries" value= "1000"/>
<property name="hibernate.cache.infinispan.entity.eviction.strategy" value= "LRU"/>
<property name="hibernate.cache.infinispan.entity.eviction.wake_up_interval" value= "2000"/>
<property name="hibernate.cache.infinispan.entity.eviction.max_entries" value= "5000"/>
<property name="hibernate.cache.infinispan.entity.expiration.lifespan" value= "60000"/>
<property name="hibernate.cache.infinispan.entity.expiration.max_idle" value= "30000"/>

提前致谢

4

1 回答 1

1

我不知道您的用例,但可以使用 fluent builder API 以编程方式配置 Infinispan CacheManagers 和 Caches。这意味着不需要standalone.xml,甚至不需要在persistence.xml 中配置Infinispan。

有关更多信息,请参阅:https ://docs.jboss.org/author/display/ISPN/Configuring+cache+programmatically

在本教程中,我可以看到这样的 CacheManager 配置(现在可能会令人困惑):

  EmbeddedCacheManager manager = new DefaultCacheManager("my-config-file.xml");

您也可以完全以编程方式对其进行配置,而无需任何输入 xml 文件,例如:

  GlobalConfigurationBuilder global = new GlobalConfigurationBuilder();
  global.transport().defaultTransport();
  global.globalJmxStatistics().enable();
  manager = new DefaultCacheManager(global.build()); 
于 2013-05-18T06:25:42.743 回答