진화 과정
- Spring Framework이 도입되기 전에는 JSP나 Servlet 기술을 사용한 Model1, Model2 아키텍쳐를 기반으로 한 Java 웹 애플리케이션을 제작하였다.
- Spring MVC 방식이 도입됨으로써 Java 웹 애플리케이션의 제작 방식이 획기적으로 변하게 되었다.
- Spring MVC 설정의 복잡함과 어려움을 극복하기 위해 Spring Boot이 탄생하게 되었다.
POJO란, 순수한 자바 오브젝트.
POJO는 스프링이 지향하는 프로그래밍 기법이다.
규칙1. Java의 스펙에 정의된 것 이외에는 다른 기술이나 규약에 얽메이면 안된다.
규칙2. 특정환경에 종속되지 않아야 한다.
예를들어 Tomcat API를 쓰다가 Jetty를 쓰면 API를 다 갈아야 하는 경우가 발생한다.
POJO가 필요한 이유
- 객체지향적 설계를 위함
스프링이 지향하는 POJO 프로그래밍을 위해서 스프링은 DI/IOC, AOP, PSA 세가지 기술을 지원한다.
핵심 포인트
- POJO 프로그래밍을 효과적으로 적용하기 위해서는 특정 기술에 대한 지식보다는 JDK의 API에 대한 지식과 객체지향적인 사고방식과 설계를 위한 훈련이 우선시 되어야 한다.
- Spring Framework은 POJO 프로그래밍을 지향하기 위해 IoC/DI, AOP, PSA 라는 기술을 제공한다.