1. 程式人生 > >JavaBean是什麽,POJO是什麽

JavaBean是什麽,POJO是什麽

術語 pub nbsp work target hat 設置 href serializa

參考:https://stackoverflow.com/questions/3295496/what-is-a-javabean-exactly

   https://stackoverflow.com/questions/12517905/what-is-java-pojo-class-java-bean-normal-class

https://www.geeksforgeeks.org/pojo-vs-java-beans/

JavaBean僅僅是一個標準:

  1. 所有的數據項都是private的(使用getter/setter進行設置)

  2. 一個public的無參構造函數

  3. implements Serializable接口

JavaBean和我們通常寫的Class沒有什麽本質區別,你寫的Class如果復合上面的規範,那麽它就是一個JavaBean。

既然和一般的Class沒有什麽特殊區別,為什麽要專門定義這麽一個術語呢?因為符合JavaBean規範的類會給許多類庫的實現帶來便利。例如只要我們自己的類是一個JavaBean,那麽類庫就可以直接對其進行stream處理。

Spring其實不要求我們實現的類符合JavaBean規範,只要這個類是一個POJO(沒有繼承預定義類的類,沒有實現預定義接口的類,沒有添加預定義註釋的類),就可以成為一個Spring組件。

JavaBean是什麽,POJO是什麽