我们知道在Java中POJO是指普通的旧Java对象.Java中的POJO和Bean类具有一些共同的特征,如下所示-两个类都必须是公共的,即所有人都可以访问。
在两个类中定义的属性或变量必须是私有的,即不能直接访问。
这两个类都必须具有默认构造函数,即没有参数构造函数。
两个类中都必须存在Public Getter和Setter才能访问变量/属性。
这两个类之间的唯一区别是Java使java Bean对象序列化,以便在需要时可以保留Bean类的状态。因此,因此Java Bean类必须实现Serializable或Externalizable接口。
因此,可以说所有JavaBeans都是POJO,但并非所有POJO都是JavaBeans。
Java Bean类的示例。public class Employee implements java.io.Serializable {
private int id;
private String name;
public Employee(){}
public void setId(int id){this.id=id;}
public int getId(){return id;}
public void setName(String name){this.name=name;}
public String getName(){return name;}
}
POJO类的示例。public class Employee {
String name;
public String id;
private double salary;
public Employee(String name, String id,double salary) {
this.name = name;
this.id = id;
this.salary = salary;
}
public String getName() {
return name;
}
public String getId() {
return id;
}
public Double getSalary() {
return salary;
}
}