Java的POJO和JavaBean的區別

POJO

  Plain Ordinary Java Object,即簡單的java對象。html

特色

  須要有一些 private 的參數,以及針對參數的 setter 和 getter 方法來訪問這些參數。java

  不包含業務邏輯或持久邏輯,不繼承或不實現任何其它Java框架的類或接口。web

實例

 1 /**
 2  * @author jyroy
 3  *    POJO
 4  */
 5 public class StudentPOJO {
 6     private String stuid;
 7     private String name;
 8     private int age;
 9     public String getStuid() {
10         return stuid;
11     }
12     public void setStuid(String stuid) {
13         this.stuid = stuid;
14     }
15     public String getName() {
16         return name;
17     }
18     public void setName(String name) {
19         this.name = name;
20     }
21     public int getAge() {
22         return age;
23     }
24     public void setAge(int age) {
25         this.age = age;
26     }
27 }

 

JavaBean

  JavaBeans是Java中一種特殊的類,能夠將多個對象封裝到一個對象(bean)中。特色是可序列化,提供無參構造器,提供getter方法和setter方法訪問對象的屬性。數據庫

  PS: 能夠看個人另一篇博客 什麼是JavaBean?框架

特色

  •  提供一個默認的無參構造函數。
  •  須要被序列化而且實現了Serializable接口。
  •  可能有一系列可讀寫屬性。
  •  可能有一系列的"getter"或"setter"方法。

實例

 1 /**
 2  * @author jyroy
 3  *    JavaBean
 4  */
 5 public class StudentBean implements java.io.Serializable{
 6    private String firstName = null;
 7    private String lastName = null;
 8    private int age = 0;
 9    //無參構造函數
10    public StudentBean() {
11    }
12    public String getFirstName(){
13       return firstName;
14    }
15    public String getLastName(){
16       return lastName;
17    }
18    public int getAge(){
19       return age;
20    }
21    public void setFirstName(String firstName){
22       this.firstName = firstName;
23    }
24    public void setLastName(String lastName){
25       this.lastName = lastName;
26    }
27    public void setAge(int age) {
28       this.age = age;
29    }
30 }

 

兩者區別

  1.  POJO是普通Java類,具備一部分getter/setter方法的那種類就能夠稱做POJO,可是JavaBean則比 POJO複雜不少, Java Bean 是可複用的組件。
  2.  通常在web應用程序中創建一個數據庫的映射對象時,咱們只能稱它爲POJO。
  3.  POJO不擔當任何特殊的角色,也不實現任何特殊的Java框架的接口。
相關文章
相關標籤/搜索