java - EhCache 3 和 Spring Boot

标签 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 也会很有帮助。

谢谢。

最佳答案

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

Spring对它的集成很好,Ehcache2和Ehcache3也兼容

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

关于java - EhCache 3 和 Spring Boot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48609983/

相关文章:

java - 在 Android 的 ProgressBar 上显示时间

java - 在 Firefox 上运行特定版本的 java

java - 无法将 'java.lang.String' 的值转换为所需类型 'myEnum'

java - HttpSecurity、WebSecurity 和 AuthenticationManagerBuilder

java - tomcat 4节点中的ehcache实现

java - 如何在 Spring Boot 之上编写框架(即编写 Spring Boot 应用程序而不实现某些接口(interface))

java - Java 中的节省时间 (int) 从它停止的地方开始?

java - void @Async 方法的单元测试用例

java - 无法将 cacheDecorator 添加到 ehcache

ehcache值需要实现序列化吗?