Dieser Inhalt ist in der von Ihnen ausgewählten Sprache nicht verfügbar.
14.2. Enabling Spring Cache Support (Library Mode)
To enable Spring support declaratively perform the following steps:
- Add
<cache:annotation-driven/>to the xml file. This line enables the standard spring annotations to be used by the application. - Define a cache manager using the
<infinispan:embedded-cache-manager ... />.
Example 14.4. Sample Declarative Configuration
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:infinispan="http://www.infinispan.org/schemas/spring"
xmlns:cache="http://www.springframework.org/schema/cache"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache.xsd
http://www.infinispan.org/schemas/spring http://www.infinispan.org/schemas/infinispan-spring.xsd">
[...]
<cache:annotation-driven/>
<infinispan:embedded-cache-manager
configuration="classpath:/path/to/cache-config.xml"/>
[...]
To enable Spring support programmatically perform the following steps:
- Add the
@EnableCachingannotation to the Spring configuration class in use. - Define a method returning a
SpringEmbeddedCacheManagerannotated with@Bean.
Example 14.5. Sample Programmatic Configuration
import org.infinispan.configuration.cache.Configuration;
import org.infinispan.configuration.cache.ConfigurationBuilder;
import org.infinispan.eviction.EvictionStrategy;
import org.infinispan.manager.DefaultCacheManager;
import org.infinispan.spring.provider.SpringEmbeddedCacheManager;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Bean;
[...]
@org.springframework.context.annotation.Configuration
@EnableCaching
public class Config {
[...]
@Bean
public SpringEmbeddedCacheManager cacheManager() throws Exception {
Configuration config = new ConfigurationBuilder()
.eviction()
.strategy(EvictionStrategy.LRU)
.maxEntries(150)
.build();
return SpringEmbeddedCacheManager(new DefaultCacheManager(config));
}
[...]