목표
스프링의 특징인 POJO(Plain Old Java Object)에 대해서 배워 봅시다.
POJO
POJO(Plain Old Java Object) : 평범한 자바 객체
주로 특정 자바 모델이나 기능, 프레임워크를 따르지 않는 Java Object를 지칭합니다.
Wikipedia.
Plain Old Java Object, 간단히 POJO는 말 그대로 해석을 하면 오래된 방식의 간단한 자바 오브젝트라는 말로서 Java EE 등의 중량 프레임워크들을 사용하게 되면서 해당 프레임워크에 종속된 "무거운" 객체를 만들게 된 것에 반발해서 사용되게 된 용어이다. 2000년 9월에 마틴 파울러, 레베카 파슨, 조쉬 맥킨지 등이 사용하기 시작한 용어로서 마틴 파울러는 다음과 같이 그 기원을 밝히고 있다.
POJO는 평범한 자바 객체
를 뜻하는데 평범한 자바객체의 특성은 다음과 같습니다.
- 클래스 상속을 강제하지 않는다.
- 인터페이스 구현을 강제하지 않는다.
- 어노테이션 사용을 강제하지 않는다.
POJO가 아닌 대표적인 객체로는 서블릿 코드를 작성할 때에 HttpServlet을 반드시 상속 받아야 하는 것처럼
public XXXServlet extends HttpServlet{ }
상속을 강제 합니다.
EXAMPLE
EJB 등에서 사용되는 Java Bean 이 아닌 Getter 와 Setter 로 구성된 가장 순수한 형태의 기본 클래스를 POJO라 합니다.
아래와 같은 코드가 POJO를 나타냅니다.
public class PojoClass {
private String ssn;
private int age;
public int getSsn() {
return ssn;
}
public int getAge() {
return age;
}
public void setSsn(String ssn) {
this.ssn = ssn;
}
public void setAge(int age) {
this.age = age;
}
}
近期评论