POJO(Plain Ordinary Java Object)即普通Java類,具有一部分getter/setter方法的那種類就可以稱作POJO。
實際意義就是普通的JavaBeans(簡單的實體類),特點就是支持業(yè)務(wù)邏輯的協(xié)助類。
POJO類的作用是方便程序員使用數(shù)據(jù)庫中的數(shù)據(jù)表,對于程序員來說,可以很方便的將POJO類當作對象來進行使用,也可以方便的調(diào)用其get,set方法。
但不允許有業(yè)務(wù)方法,也不能攜帶有connection之類的方法,即不包含業(yè)務(wù)邏輯或持久邏輯等。
按著Sun公司的定義,JavaBean是一個可重復(fù)使用的軟件組件。實際上JavaBean是一種Java類,通過封裝屬性和方法成為具有某種功能或者處理某個業(yè)務(wù)的對象,簡稱bean。
JavaBean 是一種JAVA語言寫成的可重用組件。它的方法命名,構(gòu)造及行為必須符合特定的約定:
這個類必須有一個公共的缺省構(gòu)造函數(shù)。
這個類的屬性使用getter和setter來訪問,其他方法遵從標準命名規(guī)范。
這個類應(yīng)是可序列化的。
因為這些要求主要是靠約定而不是靠實現(xiàn)接口,所以許多開發(fā)者把JavaBean看作遵從特定命名約定的POJO。
JavaBean的任務(wù)就是: “Write once, run anywhere, reuse everywhere”,即“一次性編寫,任何地方執(zhí)行,任何地方重用”。
JavaBean可分為兩種:一種是有用戶界面(UI,User Interface)的JavaBean;還有一種是沒有用戶界面,主要負責(zé)處理事務(wù)(如數(shù)據(jù)運算,操縱數(shù)據(jù)庫)的JavaBean。
JSP通常訪問的是后一種JavaBean。
簡而言之,當一個Pojo可序列化,有一個無參的構(gòu)造函數(shù),使用getter和setter方法來訪問屬性時,他就是一個JavaBean。