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

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


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 冷水江市| 思茅市| 东丽区| 正阳县| 信阳市| 盐津县| 南康市| 乃东县| 晋城| 云浮市| 中卫市| 牙克石市| 石首市| 炉霍县| 丽江市| 巫溪县| 岳阳市| 江川县| 留坝县| 盐边县| 黄山市| 正阳县| 铁力市| 南丰县| 武清区| 永顺县| 虎林市| 盖州市| 安仁县| 漳州市| 扶风县| 信丰县| 岐山县| 阳曲县| 内乡县| 富源县| 千阳县| 伊吾县| 台北县| 河间市| 屏边|