Java各類對象(PO,BO,VO,DTO,POJO,DAO,Entity,JavaBean,JavaBeans)的區分

PO:持久對象 (persistent object),po(persistent object)就是在Object/Relation Mapping框架中的Entity,po的每一個屬性基本上都對應數據庫表裏面的某個字段。徹底是一個符合Java Bean規範的純Java對象,沒有增長別的屬性和方法。持久對象是由insert數據庫建立,由數據庫delete刪除的。基本上持久對象生命週期和數據庫密切相關。html


VO:值對象(Value Object),一般用於業務層之間的數據傳遞,和PO同樣也是僅僅包含數據而已。但應是抽象出的業務對象,能夠和表對應,也能夠不,這根據業務的須要。java

表現層對象(View Object),主要對應展現界面顯示的數據對象,用一個VO對象來封裝整個界面展現所須要的對象數據。程序員


BO:業務對象層的縮寫(Business Object),封裝業務邏輯的java對象,經過調用DAO方法,結合PO,VO進行業務操做。具體能夠看網上的一個例子:數據庫

好比一個簡歷,有教育經歷、工做經歷、社會關係等等。
咱們能夠把教育經歷對應一個PO,工做經歷對應一個PO,社會關係對應一個PO。
創建一個對應簡歷的BO對象處理簡歷,每一個BO包含這些PO。
這樣處理業務邏輯時,咱們就能夠針對BO去處理。設計模式


DTO:數據傳輸對象(Data Transfer Object),是一種設計模式之間傳輸數據的軟件應用系統。數據傳輸目標每每是數據訪問對象從數據庫中檢索數據。數據傳輸對象與數據交互對象或數據訪問對象之間的差別是一個以不具備任何行爲除了存儲和檢索的數據(訪問和存取器)。簡單來講,當咱們須要一個對象10個字段的內容,但這個對象總共有20個字段,咱們不須要把整個PO對象所有字段傳輸到客戶端,而是能夠用DTO從新封裝,傳遞到客戶端。此時,若是這個對象用來對應界面的展示,就叫VO。服務器


JavaBean:一種可重用組件,即「一次性編寫,任何地方執行,任何地方重用」。知足三個條件①類必須是具體的和公共的②具備無參構造器③提供一致性設計模式的公共方法將內部域暴露成員屬性。併發

主要用途:能夠用在 功能、處理、值、數據庫訪問和JSP中任何能夠用Java代碼創造的對象。app

有兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負責處理事務(如數據運算,操縱數據庫)的JavaBean。JSP一般訪問的是後一種JavaBean。框架

分類:一般有Session bean,Entity bean,MessageDrivenBean三大類url

——Session bean會話構件,是短暫的對象,運行在服務器上,並執行一些應用邏輯處理,它由客戶端應用程序創建,其數據須要本身來管理。分爲無狀態和有狀態兩種。
——Entity bean實體構件,是持久對象,能夠被其餘對象調用。在創建時指定一個惟一標示的標識,並容許客戶程序,根據實體bean標識來定位beans實例。多個實體能夠併發訪問實體bean,事務間的協調由容器來完成。
——MessageDriven Bean消息構件,是專門用來處理JMS(Java Message System)消息的規範(EIB2.0)。JMS是一種與廠商無關的API,用來訪問消息收發系統,並提供了與廠商無關的訪問方法,以此來訪問消息收發服務。JMS客戶機能夠用來發送消息而沒必要等待迴應。

JavaBeans:JavaBeans 從狹義來講,指的是 JavaBeans 規範也就是位於 java.beans 包中的一組 API。從廣義上來講,JavaBeans 指的是 API 集合,好比 Enterprise JavaBeans。 


POJO:POJO(Plain Ordinary Java Object)簡單的Java對象,實際就是普通JavaBeans,是爲了不和EJB混淆所創造的簡稱。通指沒有使用Entity Beans的普通java對象,能夠把POJO做爲支持業務邏輯的協助類。

POJO實質上能夠理解爲簡單的實體類,顧名思義POJO類的做用是方便程序員使用數據庫中的數據表,對於廣大的程序員,能夠很方便的將POJO類當作對象來進行使用,固然也是能夠方便的調用其get,set方法。POJO類也給咱們在struts框架中的配置帶來了很大的方便。
一個POJO持久化之後就是PO
直接用它傳遞、傳遞過程當中就是DTO
直接用來對應表示層就是VO

DAO: 數據訪問對象是第一個面向對象的數據庫接口,是一個數據訪問接口(Data Access Object)。它能夠把POJO持久化爲PO,用PO組裝出來VO、DTO。
DAO模式是標準的J2EE設計模式之一.開發人員使用這個模式把底層的數據訪問操做和上層的商務邏輯分開.一個典型的DAO實現有下列幾個組件:
1. 一個DAO工廠類;
2. 一個DAO接口;
3. 一個實現DAO接口的具體類;
4. 數據傳遞對象(有些時候叫作值對象).
具體的DAO類包含了從特定的數據源訪問數據的邏輯,通常一個DAO類和一張表對應,每一個操做要和事務關聯。
 
轉:https://www.cnblogs.com/lyjin/p/6389349.html
相關文章
相關標籤/搜索