POJO與JavaBean的區別,你知道嗎?



作為程序員,尤其是從事Java開發的程序員,相信大家一定會經常遇到這兩個名詞,那麼你們知道這兩個名詞的具體含義嗎?


POJO與JavaBean的區別,你知道嗎?


下面我們來一起討論下:

POJO(Plain Ordinary Java Object)即普通Java類,具有一部分getter/setter方法的那種類就可以稱作POJO。

實際意義就是普通的JavaBeans(簡單的實體類),特點就是支持業務邏輯的協助類。
POJO類的作用是方便程序員使用數據庫中的數據表,對於程序員來說,可以很方便的將POJO類當作對象來進行使用,也可以方便的調用其get,set方法。
但不允許有業務方法,也不能攜帶有connection之類的方法,即不包含業務邏輯或持久邏輯等。

POJO與JavaBean的區別,你知道嗎?

按著Sun公司的定義,JavaBean是一個可重複使用的軟件組件。實際上JavaBean是一種Java類,通過封裝屬性和方法成為具有某種功能或者處理某個業務的對象,簡稱bean。
JavaBean 是一種JAVA語言寫成的可重用組件。它的方法命名,構造及行為必須符合特定的約定:
這個類必須有一個公共的無參構造函數。
這個類的屬性使用getter和setter來訪問,其他方法遵從標準命名規範。(屬性為私有並且有對應的getter和setter方法)
這個類應是可序列化的。
因為這些要求主要是靠約定而不是靠實現接口,所以許多開發者把JavaBean看作遵從特定命名約定的POJO。

POJO與JavaBean的區別,你知道嗎?

JavaBean的任務就是: “Write once, run anywhere, reuse everywhere”,即“一次性編寫,任何地方執行,任何地方重用”。
JavaBean可分為兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負責處理事務(如數據運算,操縱數據庫)的JavaBean。JSP通常訪問的是後一種JavaBean。
簡而言之,當一個POJO有一個無參的構造函數、可序列化、使用getter和setter方法來訪問屬性時,他就是一個JavaBean。

以上就是個人通過查閱相應的資料資源學習後,對於JavaBeans與POJO的理解。如有不當之處,還請各位大佬指教!

一塊學習,共同進步!


分享到:


相關文章: