POJO 는?
POJO는 순수한 자바 객체를 의미하는 개념으로 스프링에서 도입된 핵심 개념중 하나이다.
이 개념이 정립되게 된 이유는 전에도 말했던 EJB와 관련이 있다 EJB를 사용했을 때 어떠한 특정 기술에 종속되게 된 자바 코드는
당연히 유지보수가 어렵고 확장성이 떨어지게 된다 이렇게 된다면 자바의 강점인 객체지향의 장점을 살릴수 없게 되었다.
그래서 개발자들 사이에서 예전에 사용하던 순수한 자바 객체 지향성을 사용하던 시절로 회귀하자는 개념이 있어서 등장하게 되었다.
POJO 를 사용하는 이유는
이미 위에서 서술한대로의 이유가 대부분 이긴 하지만 다시 재정리 하자면 이러하다.
- 특정한 환경에 종속적이지 않기 때문에 재사용이 가능하며 유연하게 확장할 수 있는 코드를 적성할 수 있다.
- 특정 종속 코드를 작성하지 않기 때문에 간결한 코드를 작성할 수 있게 되고 또한 테스트를 단순하게 진행할 수 있게 된다.
- 객체 지향 원리에 충실할 수 있게 된다, 그렇기 때문에 언제든지 재활용할 수 있다.
스프링 과 POJO 의 관계
스프링은 POJO를 지향하는 프레임워크다, 그래서 최대한 다른 환경과 기술에 종속적이지 않기 위해 몇가지 기술을 지원하고 있는데
그것들이 포스팅 하거나 포스팅 예정인 [IoC/DI], [AOP], [PSA] 이다.
POJO를 정의하고자 한다면 객체지향적인 원리에 충실하면서, 환경과 기술에 종속되지 않고, 필요에 따라 재활용할 수 있는 방식으로 설계된 오브젝트를 말한다.
참고 문서
토비의 스프링 3.1
https://dev-coco.tistory.com/82
[Spring] POJO(Plain Old Java Object)란?
참고 포조(Plain Old Java Object, POJO)가 뭘까? [ 위키백과 ] Plain Old Java Object, 간단히 POJO는 말 그대로 해석을 하면 오래된 방식의 간단한 자바 오브젝트라는 말로서 Java EE 등의 중량 프레임워..
dev-coco.tistory.com