每日一得

          不求多得,只求一得 about java,hibernate,spring,design,database,Ror,ruby,快速開發(fā)
          最近關(guān)心的內(nèi)容:SSH,seam,flex,敏捷,TDD
          本站的官方站點(diǎn)是:顛覆軟件

            BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            220 隨筆 :: 9 文章 :: 421 評(píng)論 :: 0 Trackbacks
          想用緩存又不想用oscache覺得
          麻煩,自己寫了個(gè)簡(jiǎn)單的緩存,不小心發(fā)現(xiàn)getAllCity結(jié)果總是在第一次進(jìn)去的時(shí)候數(shù)量加倍,第二次就好了,真實(shí)怪事.

          代碼如下:
          public?static?List?getAllCity(boolean?bInit)?throws XXException?{
          ????????List?cityList?
          =?new?ArrayList();
          ????????
          if?(null?==?CityInfos?||?CityInfos.size()?==?0)?bInit?=?true;
          ????????
          synchronized?(CityInfos)?{
          ????????????
          if?(bInit)?{?//retrieve?city?info?from?database
          ????????????????CityService?service?=?new?CityService();
          ????????????????cityList?
          =?service.getAllCitys();
          ????????????????CityInfos.clear();
          ????????????????
          if?(null?!=?cityList?&&?cityList.size()?>?0)?{
          ????????????????????log.info(
          "========"?+?"cityList?size?:?"?+?cityList.size()?+?"========");
          ????????????????????
          for?(Iterator?it?=?cityList.iterator();?it.hasNext();)?{
          ????????????????????????CityVo?cityVo?
          =?(CityVo)?it.next();
          ????????????????????????CityInfos.put(cityVo.getId(),?cityVo);
          ????????????????????}
          ????????????????}
          ????????????}

          ????????????cityList.addAll(CityInfos.values());
          ????????}
          ????????
          return?cityList;
          ????}

          CityInfos是一個(gè)static Hashtable,查了下原來是共用了cityList,將synchronized 里面的cityList 改成
          List tmpCityList 就可以了? :)? 為什么會(huì)犯低級(jí)錯(cuò)誤呢?? :(
          posted on 2006-03-30 14:18 Alex 閱讀(164) 評(píng)論(0)  編輯  收藏 所屬分類: java
          主站蜘蛛池模板: 务川| 福泉市| 沙坪坝区| 施秉县| 咸宁市| 延川县| 蓝山县| 台州市| 紫阳县| 沈丘县| 迭部县| 伊金霍洛旗| 资中县| 苏尼特右旗| 平远县| 宜川县| 秀山| 静安区| 响水县| 邹城市| 定安县| 璧山县| 十堰市| 乡宁县| 天祝| 临沧市| 本溪| 郧西县| 闸北区| 延川县| 宁远县| 建湖县| 渭源县| 雷波县| 伊川县| 砚山县| 乌鲁木齐县| 浦江县| 哈巴河县| 将乐县| 扶绥县|