springboot项目中,ehcache报错,需要CacheManager单例的解决办法
2021-06-08 00:02
标签:map 路径 his 单例 cti 版本 run 磁盘 policy 在新的springboot项目中,如果在mybatis中使用了ehcache后,再第二次使用ehcache,会提示错误 原因是在ehcache2.5版本后,cachemanager必须是单例的,不允许多次创建。 解决办法 在config的配置文件中,新建一个bean,然后署名,在程序引用他时,标注这个name为新建的cachemanager 配置代码 ehcache2.xml ( ehcache.xml文件为系统默认加载的额,这里必须另建一个xml文件,以示区分 ) 引用部分 在service层 启动入口类 springboot项目中,ehcache报错,需要CacheManager单例的解决办法 标签:map 路径 his 单例 cti 版本 run 磁盘 policy 原文地址:https://www.cnblogs.com/sdgtxuyong/p/14547822.htmlAnother CacheManager with same name ‘default‘ already exists in the same VM. Please provide unique names for each CacheManager in the config or do one of following:
@Configuration
public class EhCacheConfig {
// @Bean
// public CacheManager getCacheManager() {
//
// return CacheManager.create("classpath:ehcache.xml");
// }
@Bean(name = "demo")
public CacheManager getCacheManagerDemo() {
return CacheManager.create("classpath:ehcache2.xml");
}
}
xml version="1.0" encoding="UTF-8"?>
ehcache name="demo" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://ehcache.org/ehcache.xsd"
updateCheck="false">
diskStore path="D:\44test\ehcache" />
defaultCache maxElementsInMemory="1000"
maxElementsOnDisk="10000000" eternal="false" overflowToDisk="true"
timeToIdleSeconds="120" timeToLiveSeconds="120"
diskExpiryThreadIntervalSeconds="120" memoryStoreEvictionPolicy="LRU">
defaultCache>
ehcache>
@Cacheable(cacheManager = "demo")
public List
@SpringBootApplication
@MapperScan(basePackages = {"cn.taotao.dao"})
@EnableCaching
public class DemoApplication {
public static void main(String[] args) {
SpringApplication.run(DemoApplication.class, args);
}
}
上一篇:函数组合
下一篇:Java基础之集合篇 (二)
文章标题:springboot项目中,ehcache报错,需要CacheManager单例的解决办法
文章链接:http://soscw.com/index.php/essay/91963.html