在Java中VO、 PO 、BO、DTO、DAO、POJO是什么意思


在Java中VO、 PO 、BO、DTO、DAO、POJO是什么意思
最近在項目中,遇到VO,我的天。。。那就一起學習回憶一下

首先簡單說明下:

O/R Mapping是Object Relational Mapping(對象關系映射)的縮寫。簡單來說,就是將對象和關系數據庫綁定,用對象來表示關系數據。

Java WEB三層架構咱們更需要熟練使用

VO:值對象(Value Object)

用new關鍵字創建,有GC回收通常用於業務層之間的數據傳遞,一般是抽象出的業務對象,可以和數據表相對應,也可以不。在web層,對應一個web頁面或者swt界面,用一個VO對象對應一個界面的值。  

PO:持久對象(Persistant Object)

屬性和數據庫表中的字段一一對應,可以看成是數據庫中的表相映射的java對象。由數據庫insert產生,由數據庫delete刪除。其生命周期和數據庫密切相關,但PO中不應該包含任何對數據庫的操作。

其java文件一般都是數據庫表中字段屬性和對應的get,set方法

BO:業務對象(business object)

主要作用是把業務邏輯封裝成一個對象。這個對象可以包括一個或多個其他的對象。比如一個簡歷,有教育經歷,實習經歷,得獎情況等等,建立一個對應簡歷的BO對象處理簡歷,每個BO包含這些PO,這樣處理業務邏輯時,我們可以針對BO進行處理。

DTO:數據傳輸對象(Data Transfer Object)同時又DTO模式

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

DAO:數據訪問對象(Data Access Object)同時又DAO模式

主要用來封裝對數據庫的訪問,包含了各種數據庫的操作方法,提供數據庫的CRUD操作。通過它可以把POJO持久化為PO,用PO組裝為DTO、VO

POJO:簡單Java對象(Plain Ordinary Java Object)

POJO是最常見最多變的對象,是一個中間對象,也是我們最常見的打交道的對象。

一個POJO持久化以后就是PO

直接用它傳遞,傳遞過程中就是DTO

直接用來對應標識層就是VO

畫個圖簡單表示一下(借用別人的圖)

地址:http://jeoff.blog.51cto.com/186264/88517/

此文章為轉載,地址為:https://www.cnblogs.com/doStudying/p/6492474.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM