POJO 란?
Plain Old Java Object의 약자로 직역을 하자면 평범한 구식 자바 오브젝트이다.
무거운 EJB와는 반대로 경량의 자바 객체를 강조하는 의미로 사용했다.
이렇게 정의만 봐서는 무슨 말인지 이해하기가 힘들다.
먼저 EJB를 대체해서 나왔다고하니 EJB가 무엇인지 알아보자.
EJB?
EJB란 Enterprise JavaBean의 약자로 자바의 기술 중 하나다.
IT시스템이 점점 증대되고 그에 따라 점점 복잡한 기술이 요구되었으며 자바의 기초적인 JDK만으로는
그것을 충족시킬 수 없었다. 서버 기반의 자바 기술인 J2EE가 등장했지만 Servlet, JSP 레벨의 최소한의
서버 프로그래밍 인터페이스만 가지고는 복잡한 애플리케이션을 제작하는 것은 쉽지 않았다.
이런 것을 보안하기 위해 나온 것이 바로 sun사에서 만든 EJB이다.
EJB를 사용함으로서 개발자는 비즈니스 로직에만 집중할 수 있게 되었다.
하지만 이것은 배보다 큰 배꼽을 사용하는 것과 비슷했다.
현실에서 1% 미만의 애플리케이션을 위해 나머지 99% 애플리케이션도 무거운 기능을 사용해야했다.
또한, EJB의 혜택을 모두 얻기 위해서는 모든 기능이 다 필요하지도 않은 WAS를 구입해야 했고,
고급 IDE도움 없이는 복잡한 설정에 허우적대야 했다.
결국 EJB와 같은 잘못된 기술을 피하고, 객체지향 원리에 따라 만들어진 자바 언어의 기본에 충실하게
비즈니스 로직을 구현하는 일명 POJO방식으로 돌아서야 한다는 목소리가 높아졌다.
그렇다면 POJO는 무엇인가?
POJO의 특징을 살펴보자면 다음과 같다.
- 특정 규약에 종속되지 않는다.
- 특정 환경에 종속되지 않는다.
- 객체지향원리에 충실해야 한다.
POJO는 어떻게 쓰일까?
- 자바빈 (JavaBean)
- POJO 프레임워크
POJO 프로그래밍을 손쉽게 할 수 있도록 지원하는 세가지 가능 기술
- IoC / DI
- AOP
- PSA
※ 참조 :
http://isstory83.tistory.com/94
http://bsnippet.tistory.com/17
https://m.blog.naver.com/PostView.nhn?blogId=writer0713&logNo=220700687650&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F
'Programming > Java & JSP & Spring' 카테고리의 다른 글
[SpringBoot] JPA 언더바 자동변경 방지 (0) | 2017.08.01 |
---|---|
[SpringBoot]프로퍼티 DB 설정 옵션 (0) | 2017.07.28 |
JPA 사용법 (JpaRepository) (3) | 2017.07.20 |
톰캣(Tomcat)과 아파치(Apache) 차이 (0) | 2017.07.17 |
JPA(Java Persistence API)란? (0) | 2017.07.14 |