1. POJO JAVA란?
- POJO(Plain Old Java Object)
- 순수한 자바 오브젝트
- 역사를 거슬러 올라가보면, 예전 EJB(Enterprise JavaBeans)가 인기를 끌고, 많이 사용하던 시절에는 단순한 자바 오브젝트를 사용해서 개발하는 것이 아닌, EJB에 종속적인 부분으로 개발을 진행
- 그로 인하여, Module의 교체, 시스템 업그레이드시 종속적으로 인하여 불편함 발생
2. POJO 특징
01. 특정 규약에 종속 되지 않는다
- 특정 Library, Module에서 정의된 클래스를 상속 받아서 구현하지 않아도 된다
- POJO가 되기 위해서는 외부의 의존성을 두지 않고, 순수한 JAVA로 구성이가능해야 한다
02. 특정 환경에 종속되지 않는다
- 만일 특정 비즈니스 로직을 처리하는 부분에 외부 종속적인 http, request, session 등 POJO를 위해 한 것으로 간주
- 또한 많이 사용하고는 있지만 @Annotaion기반으로 설정하는 부분도 엄연히 POJO라고 볼수는 없다
3. POJO Framework
01. Spring, Hibernate
- 하나의 서비스를 개발하기 위해서는, 시스템의 복잡함, 비즈니스 로직의 복잡함 등 다양한 어려움을 맞이 하게 된다
- 위의 두 프레임워크는 객체지향적인 설계를 하고 있으며, 또한 POJO를 지향하고 있다
- 그러므로 개발자가 서비스 로직에 집중하고 이를 POJO로 쉽게 개발할 수 있도록 지원하고 있다