以编程方式在jboss 7中配置infinispan

时间:2012-10-22 15:11:46

标签: java caching jboss7.x persistence.xml infinispan

有没有办法可以从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"/>

提前致谢

1 个答案:

答案 0 :(得分:1)

我不知道您的用例,但可以使用流畅的构建器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());