PO、VO、BO、DTO、POJO、DAO、DO的含義

POJO

Plain Ordinary Java Object 簡單普通的java對象

一般用於數據層映射到數據庫表的類。
POJO是最參見最多變的對象,是一箇中間對象,也是我們最常打交道的對象。
一個POJO持久化以後就是PO
直接用它傳遞、傳遞過程中就是DTO
直接用來對應表示層就是VO


DO

domain object持久對象

就是從現實世界中抽象出來的有形或無形的業務實體。


PO

persistant object持久對象

最形象的理解就是一個PO就是數據庫中的一條記錄。
好處是可以把一條記錄作爲一個對象處理,可以方便的轉爲其它對象。


BO

business object業務對象

主要作用是把業務邏輯封裝爲一個對象。這個對象可以包括一個或多個其它的對象。
比如一個簡歷,有教育經歷、工作經歷、社會關係等等。
我們可以把教育經歷對應一個PO,工作經歷對應一個PO,社會關係對應一個PO。
建立一個對應簡歷的BO對象處理簡歷,每個BO包含這些PO。
這樣處理業務邏輯時,我們就可以針對BO去處理。


VO

ViewObject表現層對象

主要對應界面顯示的數據對象。對於一個WEB頁面,或者SWT、SWING的一個界面,用一個VO對象對應整個界面的值。


DTO

Data Transfer Object數據傳輸對象

主要用於遠程調用等需要大量傳輸對象的地方。
比如我們一張表有100個字段,那麼對應的PO就有100個屬性。
但是我們界面上只要顯示10個字段,
客戶端用WEB service來獲取數據,沒有必要把整個PO對象傳遞到客戶端,
這時我們就可以用只有這10個屬性的DTO來傳遞結果到客戶端,這樣也不會暴露服務端表結構.到達客戶端以後,如果用這個對象來對應界面顯示,那此時它的身份就轉爲VO


DAO

data access object數據訪問對象

這個大家最熟悉,和上面幾個O區別最大,基本沒有互相轉化的可能性和必要.
主要用來封裝對數據庫的訪問。通過它可以把POJO持久化爲PO,用PO組裝出來VO、DTO

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章