我们目前正在使用以下内容。它已经很老了,但现在无法升级到更高版本
`
<dependency>
<groupId>org.infinispan</groupId>
<artifactId>infinispan-spring3</artifactId>
<version>6.4.0.Final-redhat-4</version>
</dependency>
<dependency>
<groupId>org.infinispan</groupId>
<artifactId>infinispan-client-hotrod</artifactId>
<version>6.4.0.Final-redhat-4</version>
</dependency>
`
我们已经将代码从直接JDG实现(如下所示)修改为基于XML的配置文件中的SpringRemoteCacheManager,并使用Spring cache:advice来定义可缓存,cahce-put,cache-evict方法。
请参阅我们可以控制添加到期时间的当前代码。我们想用Spring做同样的事情 - Infinispan。使用Spring - Infinispan,我们不会编写任何将对象放入缓存中/从缓存中获取对象的应用程序代码,因为它由Spring注释处理(@Cacheable / @CachePut) 感谢是否有人可以提供任何指示
RemoteCache<Object, Object> cache = jdgRemoteCacheManager.getCache(cacheName);
cache.put(keyName, object, 15, TimeUnit.MINUTES);
答案 0 :(得分:0)
不幸的是,Spring Cache支持不提供这样的方法(参见Javadocs)。因此,似乎唯一的方法是使用Infinispan提供的RemoteCache
API。
也许您可以实现自己的@Cacheable
注释并实现所需的所有功能。但这确实是一个春天的问题......