POJO (Plain Old Java Object)란?
오래된 방식의 간단한 자바 객체라는 의미이다. Java EE 등의 무거운 프레임워크 들을 사용하게 되면서 해당 프레임워크에 종속된 점점 무거워지는 객체에 대해 반발하며 나타난 개념이다. 2000년 9월에 마틴 파울러, 레베카 파슨, 조쉬 맥킨지 등이 시작하였으며 그 기원에 대한 내용은 마틴 파울러가 다음과 같이 말했다.
"We wondered why people were so against using regular objects in their systems and concluded that it was because simple objects lacked a fancy name. So we gave them one, and it's caught on very nicely.d"
"우리는 사람들이 자기네 시스템에 보통의 객체를 사용하는 것을 왜 그렇게 반대하는지 궁금하였는데, 간단한 객체는 폼 나는 명칭이 없기 때문에 그랬던 것이라고 결론지었다. 그래서 적당한 이름을 하나 만들어 붙였더니, 아 글쎄, 다들 좋아하더라고."
단순한 자바 객체, 자주 쓰는 VO 인데 POJO라고 이름을 지어주니 사람들이 사용하기 시작했다는 것 같다.
POJO 를 구현한 코드는 아래와 같다.
public class Pojo {
private String someProperty;
public String getSomeProperty() {
return someProperty;
}
public void setSomeProperty(String someProperty) {
this.someProperty = someProperty;
}
}
POJO 가 아닌 객체
순수한 객체가 아니면 POJO가 아니다.
1. 클래스 확장
public class Foo extends javax.servlet.http.HttpServlet { ...
2. 인터페이스 구현
public class Bar implements javax.ejb.EntityBean { ...
3. annotaion 포함
@javax.persistence.Entity public class Baz { ...
참고 및 출처 :
'spring' 카테고리의 다른 글
[빌드도구] maven & gradle 이란? (0) | 2022.10.11 |
---|---|
[spring] DispatcherServlet (0) | 2021.10.23 |
[spring] Context란? (0) | 2021.10.20 |
[spring] annotation 이용한 DI (0) | 2021.10.20 |
[spring] 느슨한 결합력과 인터페이스(DI 이해에 도움) (0) | 2021.10.15 |