JAVA 中的 POJO、PO、VO、DTO、DAO、QO、BO、JavaBean

POJO

POJO (Plain Ordinary Java Object) 簡單的Java對象java

名字強調它是一個普通的java對象。數據庫

  • POJO 只有 private 屬性以及這個屬性的 public 的 get 和 set 方法,只能裝載數據,也不能實現接口。
  • POJO不是JavaBean,不承擔任何特殊的角色,也不實現任何接口。

PO

PO (Persistent Object) 持久化對象,是與數據庫中表相對應的java對象。app

也有喜歡人用 entity、model 等名稱來表示框架

VO

VO (Value Object) 值對象。用於業務層之間的的數據傳遞,或者對應於頁面上須要顯示的數據。函數

DTO

DTO (Data Transfer Object) 數據傳輸對象。有時候咱們僅僅須要得到某一個表的幾個字段 ,因此此時能夠用DTO存儲這幾個字段。orm

DAO

DAO (Data Access Object) 數據訪問對象。此對象用於訪問數據庫,一般和 po 結合使用。對象

DAO 中包含了各類數據庫的操做方法,經過這些方法,結合 PO 對數據庫進行相關的操做接口

由於我通常選 myatis 做 orm 框架,因此我習慣把 DAO 層取名 mapper,不知道這樣是否符合規範,不過我也開始試圖改掉這個習慣get

JavaBean

JavaBean 是一個遵循特定寫法的Java類,它的方法命名,構造及行爲必須符合特定的約定:it

  1. 這個類必須具備一個 public 無參構造函數
  2. 全部屬性必須是 private
  3. 私有化的屬性必須經過 public 類型的方法(getter和setter)暴露給其餘程序,而且方法的命名也必須遵循必定的命名規範。
  4. 這個類必須是可序列化的,用於實現 bean 的持久性。好比能夠實現 Serializable 接口

QO

QO (Query object) 查詢對象,通常用於封裝查詢參數。

BO

BO (Business Object) 業務對象。主要做用是把業務邏輯封裝爲一個對象,這個對象能夠包括一個或多個其它的對象。

更多人喜歡用 service 來表式業務對象

相關文章
相關標籤/搜索