我正在将一些遗留应用程序从 sb 2 (spring boot)迁移到 sb 3。应用程序正在使用 ehcache 和 xml 配置。在我的 cacheConfig 类中,我使用的是这样的东西:
import org.springframework.cache.ehcache.EhCacheCacheManager;
@Configuration
@EnableCaching
class Config {
@Bean
CacheManager cacheManager() {
return new EhCacheCacheManager(ehCacheManager())
}
@Bean(destroyMethod = 'shutdown')
net.sf.ehcache.CacheManager ehCacheManager() {
URL url = ("/configFile.xml");
return net.sf.ehcache.CacheManager.newInstance(url);
}
但是导入 org.springframework.cache.ehcache.EhCacheCacheManager; Spring 上下文支持 6+ (Spring Boot 3) 中不再存在。
有什么办法可以解决这个问题吗?如何使用新的 Spring Boot 3 配置我的 ehcache?
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://www.ehcache.org/v3"
xsi:schemaLocation="http://www.ehcache.org/v3
http://www.ehcache.org/schema/ehcache-core-3.10.xsd">
<cache alias="test_cache">
<expiry>
<ttl unit="seconds">360000</ttl>
</expiry>
<resources>
<heap unit="entries">300</heap>
</resources>
</cache>
<cache alias="test_cache2">
<expiry>
<ttl unit="seconds">3600000</ttl>
</expiry>
<resources>
<heap unit="entries">300</heap>
</resources>
</cache></config>
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.context.annotation.Configuration;
@Configuration
@EnableCaching
public class EhCacheConfig {
}
spring.cache.jcache.config=classpath:ehcache.xml