隨筆-6  評論-7  文章-2  trackbacks-0
          在之前的版本中,外鍵對象的獲取是實時的,不經過緩存,所以像如下的代碼會很損失性能
          somePerson.getFriend().getName();
          somePerson.getFriend().getAge();
          somePerson.getFriend().getGender();
          somePerson.getFriend().getFather().getName();
          這5行代碼如果運行一次的話會進行5次查詢,如果反復循環運行會更多,但其中的前4次都是重復的。
          如果使用0.7.5版產生的源碼,這樣的代碼運行一次只會進行必要的兩次查詢,而且如果反復循環運行的話也只會運行這必要的兩次查詢。
          關于對象共享,在之前的版本中,是沒有任何對象共享的,用同樣的主鍵進行findByPk查詢所得到的對象是不同的,這在對程序中數據進行同步的實現上增加了復雜度。而使用0.7.5版所生成的源碼,可以保證這樣的對象是相同的(不是相等而是相同),而且從別的find方法查詢到的相同主鍵的對象也能保證是唯一的(findFree,自定義find,自定義集合),新版中加入了一個WeakValueMap類對這些對象進行管理,利用弱引用技術在不干涉垃圾回收的情況下對數據庫對象進行高效率的共享和緩存管理。下載地址在http://www.aygfsteel.com/Files/kobe2000/sdo0.7.5.rar
          posted on 2005-12-22 14:17 WebWheel 閱讀(437) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 黎城县| 苏州市| 班戈县| 社旗县| 奎屯市| 南溪县| 肃宁县| 邛崃市| 汾西县| 诏安县| 温州市| 韶关市| 叙永县| 渭源县| 青龙| 伽师县| 宕昌县| 牟定县| 新龙县| 饶平县| 休宁县| 闻喜县| 云林县| 神农架林区| 万荣县| 剑川县| 赣州市| 苗栗市| 安宁市| 怀安县| 濮阳市| 太谷县| 吴旗县| 西丰县| 延津县| 黔西县| 天柱县| 泾源县| 宁城县| 娄烦县| 黄骅市|