您的位置:首页 > 其它

缓存框架Ehcache学习(一)创建多个CacheManager抛出异常

2014-04-03 11:44 337 查看
最近在研究缓存框架Ehcache的配置和使用,我想根据多个ehcache.xml创建多个CacheManager对象,但是报了异常:

Caused by: net.sf.ehcache.CacheException: Another unnamed CacheManager already exists in the same VM. Please provide unique names for each CacheManager in the config or do one of following:

1. Use one of the CacheManager.create() static factory methods to reuse same CacheManager with same name or create one if necessary

2. Shutdown the earlier cacheManager before creating new one with same name.

错误提示很明显:Ehcache不允许创建同样名称的CacheManager对象。如果我们没有ehcache.xml中配置CacaheManager的名称,那么默认的名称是__DEFAULT__。解决方式是<ehcache name="">中配置CacheManager的名称,并确保唯一。这样如下代码就不会报错了

URL url = CacheHelper.class.getClassLoader().getResource("ehcache.xml");
 CacheManager manager = new CacheManager(url);
  // __DEFAULT__
 System.out.println(manager.getName());

 URL url2 = CacheHelper.class.getClassLoader().getResource("ehcache2.xml");
		
 CacheManager manager2 = new CacheManager(url2);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: