POJO的概念

POJO(Plain Old Java Objects)簡單的Java對象,實際就是普通JavaBeans,是爲了避免和EJB混淆所創造的簡稱。

  
  

在Java應用程序中的角色

使用POJO名稱是爲了避免和EJB混淆起來, 而且簡稱比較直接. 其中有一些屬性及其getter setter方法的類,有時可以作爲value object或dto(Data Transform Object)來使用.當然,如果你有一個簡單的運算屬性也是可以的,但不允許有業務方法,也不能攜帶有connection之類的方法。   POJO是Plain Ordinary Java Objects的縮寫不錯,但是它通指沒有使用Entity Beans的普通java對象,可以把POJO作爲支持業務邏輯的協助類。   POJO有一些private的參數作爲對象的屬性。然後針對每個參數定義了get和set方法作爲訪問的接口。例如:   public class User {   private long id;   private String name;   public void setId(long id) {   this. id = id;   }   public void setName(String name) {   this. name=name;   }   public long getId() {   return id;   }   public String getName() {   return name;   }   }   POJO對象有時也被稱爲Data對象,大量應用於表現現實中的對象。   錯誤的認識:   POJO是這樣的一種“純粹的”JavaBean,在它裏面除了JavaBean規範的方法和屬性沒有別的東西,即private屬性以及對這個屬性方法的public的get和set方法。我們會發現這樣的JavaBean很“單純”,它只能裝載數據,作爲數據存儲的載體,而不具有業務邏輯處理的能力。   真正的意思:   POJO = "Plain Old Java Object",是MartinFowler等發明的一個術語,用來表示普通的Java對象,不是JavaBean, EntityBean 或者 SessionBean。POJO不但當任何特殊的角色,也不實現任何特殊的Java框架的接口如,EJB, JDBC等等。   即POJO是一個簡單的普通的Java對象,它包含業務邏輯或持久邏輯等,但不是JavaBean、EntityBean等,不具有任何特殊角色和不繼承或不實現任何其它Java框架的類或接口。   下面是摘自Martin Fowler個人網站的一句話:   "We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it's caught on very nicely."--MartinFowler.com   我們疑惑爲什麼人們不喜歡在他們的系統中使用普通的對象,我們得到的結論是——普通的對象缺少一個響亮的名字,因此我們給它們起了一個,並且取得了很好的效果。——Martin Fowler
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章