Spring Framework의 탄생 배경을 정리한 글입니다.
EJB의 한계
Spring Framework가 등장하기 전, Java 기반의 엔터프라이즈 애플리케이션 개발에서는 EJB(Enterprise JavaBeans)가 널리 사용되었습니다. 그러나 EJB는 다음과 같은 문제점을 가지고 있어 개발자들에게 큰 부담이 됐습니다.
- EJB는 핵심 로직 개발뿐만 아니라 환경 설정과 복잡한 XML 설정 파일 관리에 시간을 많이 할애해야 했습니다.
- EJB 컨테이너는 무겁고 리소스를 많이 소모했습니다.
- 테스트가 어렵습니다.
- 단위 테스트를 진행하려면 EJB 컨테이너가 필요하여 로컬 환경에서의 빠른 테스트가 불가능했습니다.
- 컴포넌트 간 결합도가 높았습니다.
위 같은 이유로 어플리케이션 유지보수와 확장이 어려웠습니다.
Spring Framework로 해결
Spring Framework는 EJB의 문제점을 해결하기 위해 다음과 같은 목표로 탄생하게 되었습니다.
- 자바 엔터프라이즈 애플리케이션 개발 단순화
- 개발 생산성 향상
이를 위해 Spring은 다음과 같은 해결방법을 제공합니다.
- EJB의 복잡성을 해결하기 위해 POJO 기반 개발 지원
- DI로 객체 간 결합도 감소 및 유지보수성 향상
- AOP로 횡단 관심사를 분리하여 핵심로직에 집중
- 경량화된 컨테이너로 테스트 및 개발 속도 향상
'Spring' 카테고리의 다른 글
Spring Boot에서 @RestController로 들어온 HTTP 요청이 처리되어 응답으로 변환되는 전체 과정 (0) | 2025.04.06 |
---|---|
웹 API의 발전 과정: SOAP에서 REST로의 전환 (0) | 2025.04.06 |
Spring MVC: 클라이언트 요청 처리 흐름 (0) | 2025.03.25 |
스프링 AOP (0) | 2025.03.25 |
Spring Boot에서 사용되는 Bean 등록 방법 (0) | 2025.03.23 |