PO(persistant object)(個人理解:就是數據庫模型 通過映射 轉化成的 持久化類 model)
持久對象 在o/r映射的時候出現的概念,如果沒有o/r映射,沒有這個概念存在了。通常對應數據模型(數據庫),本身還有部分業務邏輯的處理。可以看成是與數據庫中的表相映射的java對象。最簡單的PO就是對應數據庫中某個表中的一條記錄,多個記錄可以用PO的集合。PO中應該不包含任何對數據庫的操作。
VO(value object) 值對象 (個人理解:便於使用在po的基礎上進行又一次加工而產生的對象)
通常用於業務層之間的數據傳遞,和PO一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不,這根據業務的需要.個人覺得同DTO(數據傳輸對象),在web上傳遞。
BO(business object) 業務對象(個人理解:便於使用在vo的基礎上進行 業務邏輯的 加工 后產生的類 service 層)
從業務模型的角度看,見UML元件領域模型中的領域對象。封裝業務邏輯的java對象,通過調用DAO方法,結合PO,VO進行業務操作。
下邊是我理解中的架構
--------------數據庫
表
--------------model層
PO(persistant object)(個人理解:就是數據庫模型 通過映射 轉化成的 持久化類 model)
持久對象 在o/r映射的時候出現的概念,如果沒有o/r映射,沒有這個概念存在了。通常對應數據模型(數據庫),本身還有部分業務邏輯的處理。可以看成是與數據庫中的表相映射的java對象。最簡單的PO就是對應數據庫中某個表中的一條記錄,多個記錄可以用PO的集合。PO中應該不包含任何對數據庫的操作。
VO(value object) 值對象 (個人理解:便於使用在po的基礎上進行又一次加工而產生的對象)
通常用於業務層之間的數據傳遞,和PO一樣也是僅僅包含數據而已。但應是抽象出的業務對象,可以和表對應,也可以不,這根據業務的需要.個人覺得同DTO(數據傳輸對象),在web上傳遞。
--------------dao層
使用po vo對數據庫進行的簡單的操作 例如增刪改查。。。。。
--------------service層
BO(business object) 業務對象(個人理解:便於使用在vo的基礎上進行 業務邏輯的 加工 后產生的類 service 層)
從業務模型的角度看,見UML元件領域模型中的領域對象。封裝業務邏輯的java對象,通過調用DAO方法,結合PO,VO進行業務操作。
-------------Controller層
利用service層的類進行實際的業務邏輯處理.
-------------View層
展示通過業務邏輯產生的一些列數據