EhCache 3和Spring Boot

时间:2018-02-04 15:53:07

标签: java spring-boot ehcache ehcache-3 cachemanager

有没有办法将EhCache 3 CacheManager(org.ehcache.CacheManager)抽象为Spring的CacheManager(org.springframework.cache.CacheManager)?

使用EhCache2,可以通过以下方式:

  @Bean
  public org.springframework.cache.CacheManager cacheManager(net.sf.ehcache.CacheManager ehcache) {    
    EhCacheCacheManager cacheManager = new EhCacheCacheManager(ehcache);
    return cacheManager;
  }

提示:我找到了一种方法将javax.cache.CacheManager cacheManager抽象到Spring的CacheManager(org.springframework.cache.CacheManager),方法是:

  @Bean
  public org.springframework.cache.CacheManager cacheManager(javax.cache.CacheManager cacheManager) {
    return new JCacheCacheManager(cacheManager);
  }

如果有办法将org.ehcache.CacheManager投射到javax.cache.CacheManager,也会有所帮助。

感谢。

1 个答案:

答案 0 :(得分:3)

是的,你应该依赖标准的Java缓存规范,JSR-107,又名JCache(javax.cache.CacheManager)

Spring有一个很好的集成,Ehcache2和Ehcache3也兼容它

请看一下这个答案,它还附带一些简单的例子:https://stackoverflow.com/a/39340151/24069