Sung in Blog

                     一些技術(shù)文章 & 一些生活雜碎
          O/R Mapping 是 Object Relational Mapping(對(duì)象關(guān)系映射)的縮寫。通俗點(diǎn)講,就是將對(duì)象與關(guān)系數(shù)據(jù)庫(kù)綁定,用對(duì)象來表示關(guān)系數(shù)據(jù)。在O/R Mapping的世界里,有兩個(gè)基本的也是重要的東東需要了解,即VO,PO。
            VO,值對(duì)象(Value Object),PO,持久對(duì)象(Persisent Object),它們是由一組屬性和屬性的get和set方法組成。從結(jié)構(gòu)上看,它們并沒有什么不同的地方。但從其意義和本質(zhì)上來看是完全不同的。

          1.VO是用new關(guān)鍵字創(chuàng)建,由GC回收的。
            PO則是向數(shù)據(jù)庫(kù)中添加新數(shù)據(jù)時(shí)創(chuàng)建,刪除數(shù)據(jù)庫(kù)中數(shù)據(jù)時(shí)削除的。并且它只能存活在一個(gè)數(shù)據(jù)庫(kù)連接中,斷開連接即被銷毀。

          2.VO是值對(duì)象,精確點(diǎn)講它是業(yè)務(wù)對(duì)象,是存活在業(yè)務(wù)層的,是業(yè)務(wù)邏輯使用的,它存活的目的就是為數(shù)據(jù)提供一個(gè)生存的地方。
            PO則是有狀態(tài)的,每個(gè)屬性代表其當(dāng)前的狀態(tài)。它是物理數(shù)據(jù)的對(duì)象表示。使用它,可以使我們的程序與物理數(shù)據(jù)解耦,并且可以簡(jiǎn)化對(duì)象數(shù)據(jù)與物理數(shù)據(jù)之間的轉(zhuǎn)換。

          3.VO的屬性是根據(jù)當(dāng)前業(yè)務(wù)的不同而不同的,也就是說,它的每一個(gè)屬性都一一對(duì)應(yīng)當(dāng)前業(yè)務(wù)邏輯所需要的數(shù)據(jù)的名稱。
            PO的屬性是跟數(shù)據(jù)庫(kù)表的字段一一對(duì)應(yīng)的。

          PO對(duì)象需要實(shí)現(xiàn)序列化接口。
          posted on 2005-10-28 11:30 Sung 閱讀(1779) 評(píng)論(0)  編輯  收藏 所屬分類: Java技術(shù)
          主站蜘蛛池模板: 阳山县| 柞水县| 荆州市| 齐齐哈尔市| 龙陵县| 潜江市| 察哈| 永吉县| 晋宁县| 郓城县| 滨海县| 上虞市| 那曲县| 彰化市| 盐城市| 锡林浩特市| 江永县| 蓝田县| 前郭尔| 蒙自县| 中西区| 三原县| 砚山县| 蒲城县| 镇平县| 万年县| 龙山县| 沛县| 大姚县| 安阳市| 额敏县| 海丰县| 五大连池市| 旬邑县| 如皋市| 神农架林区| 大洼县| 梅河口市| 深圳市| 潮州市| 连平县|