O/R Mapping 是 Object Relational Mapping(對象關系映射)的縮寫
通俗點講
就是將對象與關系數據庫綁定
用對象來表示關系數據
在O/R Mapping的世界裡
有兩個基本的也是重要的東東需要了解
即VO
PO
VO
值對象(Value Object)
PO
持久對象(Persisent Object)
它們是由一組屬性和屬性的get和set方法組成
從結構上看
它們並沒有什麼不同的地方
但從其意義和本質上來看是完全不同的
1.VO是用new關鍵字創建
由GC回收的
PO則是向數據庫中添加新數據時創建
刪除數據庫中數據時削除的
並且它只能存活在一個數據庫連接中
斷開連接即被銷毀
2.VO是值對象
精確點講它是業務對象
是存活在業務層的
是業務邏輯使用的
它存活的目的就是為數據提供一個生存的地方
PO則是有狀態的
每個屬性代表其當前的狀態
它是物理數據的對象表示
使用它
可以使我們的程序與物理數據解耦
並且可以簡化對象數據與物理數據之間的轉換
3.VO的屬性是根據當前業務的不同而不同的
也就是說
它的每一個屬性都一一對應當前業務邏輯所需要的數據的名稱
PO的屬性是跟數據庫表的字段一一對應的
PO對象需要實現序列化接口
From:http://tw.wingwit.com/Article/program/Java/ky/201311/28939.html