비슷해보이는 Java Bean과 POJO, Spring Bean의 차이는 무엇일까?
아무런 제약조건이 없는 일반적이고 가장 오래된 Java 객체
모든 Java 객체는 POJO 객체에 속한다.
class Pojo {
private String text;
Private int number;
public String toString() {
return text + ":" + number;
}
}
POJO에 몇가지 제약이 있는 형태
Java Bean에는 3가지 제약조건이 있다.
class JavaBean implements Serializable {
// public no-arg constructor
public JavaBean() {
}
private String text;
Private int number;
//getters and setters
public String getText(){
return text;
}
public void setText(String text){
this.text = text;
}
public int getNumber(){
return number;
}
public void setNumber(int number){
this.number = number;
}
}
Spring이 관리하는 모든 Java 객체
Bean Factory나 Application Context 형식의 Spring Context를 사용하여 관리하게 되는 모든 객체가 이 Spring Bean이라고 할 수 있다.