请问红薯:关于那个ehcache实现部分

冰封情 发布于 2010/06/21 16:20
阅读 704
收藏 3

请问红薯:你的那个缓存类[EhCacheProvider]为什么还要再放一个“Hashtable<String, EhCache> _CacheManager ;”

来管理这个cache?

     EhCache ehcache = _CacheManager.get(name);
     if(ehcache != null){
      System.out.println("FIND CACHE>>>return");
      return ehcache ;
     }else{
      System.out.println("NOT FIND CACHE>>>");
     }
     try {
            net.sf.ehcache.Cache cache = manager.getCache(name);
            if (cache == null) {
                log.warn("Could not find configuration [" + name + "]; using defaults.");
                manager.addCache(name);//这里是放入到ehcache里面
                cache = manager.getCache(name);这里又从里面取出来?why?
                log.debug("started EHCache region: " + name);               
            }
            synchronized(_CacheManager){
             ehcache = new EhCache(cache);
             System.out.println("放入Hashtable中>>>>");
             _CacheManager.put(name, ehcache);//为什么又放一边到这个Hashtable里面?why?
             return ehcache ;
            }
     }
        catch (net.sf.ehcache.CacheException e) {
            throw new CacheException(e);
        }

高人:说明下啊?

加载中
0
红薯
红薯

这块是参考 Hibernate 的 EhCache Provider 的做法。

重新看了下这个代码,似乎有点多余啊~

0
冰封情
冰封情

感觉是多余啊!为什么又要保存一份?感觉没必要!哈哈!

0
冰封情
冰封情

那天晚上看了两个小时也没看懂!只好问你了!

0
红薯
红薯

引用来自#4楼“冰封情”的帖子

那天晚上看了两个小时也没看懂!只好问你了!

刚又认真看了一遍,还是有点用途的。

因为我用自己的一个 EhCache 去封装了 Cache 实例,如果没这个东西,就每次都要 new 一个 EhCache 对象。

0
冰封情
冰封情

是的!总感觉这里绕了太多!cache类重新写了,我想Hibernate这样做事为了配置上方便,方便Hibernate做扩张,如果单纯ehcache实现,其实这样太绕了!ehcache中那个CacheManager做扩展应该就可以了!

0
鉴客
鉴客

引用来自#6楼“冰封情”的帖子

是的!总感觉这里绕了太多!cache类重新写了,我想Hibernate这样做事为了配置上方便,方便Hibernate做扩张,如果单纯ehcache实现,其实这样太绕了!ehcache中那个CacheManager做扩展应该就可以了!

如果只是一个ehcache的话,可以不用这么绕。

但跟Hibernate的Cache Provider一样,为了支持各种缓存框架,这层封装还是有需要的。

0
红薯
红薯

引用来自#7楼“贱客”的帖子

引用来自#6楼“冰封情”的帖子

是的!总感觉这里绕了太多!cache类重新写了,我想Hibernate这样做事为了配置上方便,方便Hibernate做扩张,如果单纯ehcache实现,其实这样太绕了!ehcache中那个CacheManager做扩展应该就可以了!

如果只是一个ehcache的话,可以不用这么绕。

但跟Hibernate的Cache Provider一样,为了支持各种缓存框架,这层封装还是有需要的。

知音~

0
0
李永波
李永波

高手对话 与众不同啊

返回顶部
顶部