VO、DTO、POJO、PO的區別


VO

即value object值對象。
主要體現在視圖的對象,對於一個WEB頁面將整個頁面的屬性封裝成一個對象。然后用一個VO對象在控制層與視圖層進行傳輸交換。


DTO

經過處理后的PO,可能增加或者減少PO的屬性:Data Transfer Object數據傳輸對象
主要用於遠程調用等需要大量傳輸對象的地方。
比如我們一張表有100個字段,那么對應的PO就有100個屬性。

https://blog.csdn.net/Andrew_Yuan/article/details/83088122

但是我們界面上只要顯示10個字段,
客戶端用WEB service來獲取數據,沒有必要把整個PO對象傳遞到客戶端,
這時我們就可以用只有這10個屬性的DTO來傳遞結果到客戶端,這樣也不會暴露服務端表結構.到達客戶端以后,如果用這個對象來對應界面顯示,那此時它的身份就轉為VO。

POJO

POJO是一種概念或者接口,身份及作用隨環境變化而變化:
POJO有一些private的參數作為對象的屬性。然后針對每個參數定義了get和set方法作為訪問的接口
plain ordinary java object 簡單java對象,即POJO是一個簡單的普通的Java對象,它不包含業務邏輯或持久邏輯等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不繼承或不實現任何其它Java框架的類或接口。
POJO對象有時也被稱為Data對象,大量應用於表現現實中的對象。

一個POJO持久化以后就是PO。
直接用它傳遞、傳遞過程中就是DTO
直接用來對應表示層就是VO
---------------------
作者:Andrew_Yuan
來源:CSDN
原文:https://blog.csdn.net/Andrew_Yuan/article/details/83088122
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!


免責聲明!

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



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