VO(View Object):視圖對象,用于展示層,它的作用是把某個指定頁面(或元件)的所有資料封裝起來。
DTO(Data Transfer Object):資料傳輸對象,這個概念來源于J2EE的設計模式,原來的目的是為了EJB的分布式應用提供粗粒度的資料實體,以減少分布式調用的次數,進而提高分布式調用的性能和降低網絡負載,但在這裡,泛指用于展示層與服務層之間的資料傳輸對象。
DO(Domain Object):領域對象,就是從現實世界中抽象出來的有形或無形的業務實體。
PO(Persistent Object):持久化對象,它跟持久層(通常是關系型資料庫)的資料結構形成一一對應的映射關系,如果持久層是關系型資料庫,那麼,資料表中的每個字段(或若幹個)就對應PO的一個(或若幹個)屬性
PO(bean,entity等命名):
persistant object持久對象,資料庫表中的記錄在java對象中的顯示狀态
最形象的了解就是一個PO就是資料庫中的一條記錄。
好處是可以把一條記錄作為一個對象處理,可以友善的轉為其它對象。
BO(service,manager,business等命名):
business object業務對象
主要作用是把業務邏輯封裝為一個對象。這個對象可以包括一個或多個其它的對象。
形象描述為一個對象的形為和動作,當然也有涉及到基它對象的一些形為和動作。比如處理
一個人的業務邏輯,有睡覺,吃飯,工作,上班等等形為還有可能和别人發關系的形為。
這樣處理業務邏輯時,我們就可以針對BO去處理。
VO(from也有此寫法) :
value object值對象
主要展現在視圖的對象,對于一個WEB頁面将整個頁面的屬性封裝成一個對象。然後用一個VO對象在控制層與視圖層進行傳輸交換。