Spring과 같은 경량(lightweight) 프레임워크(framework)의 필요하게 된 이유
1. 불필요한 클래스와 설정파일의 생성 : EJB를 만들기 위해서는 작성하는 클래스 이외에 최소한 3개 이상의 클래스가 필요하다. 또한 JNDI를 통하여 EJB자원을 관리하기 위하여 설정파일을 추가해야 한다.
2. 분산 어플리케이션 서버의 필요 : 반드시 Web Application Server(WAS)인 EJB Container에서 배포하고 테스트해야 한다.
3. 직렬화에 의한 속도 저하와 표준안의 귄위상실 : 직렬화를 통하여 분산환경을 기본으로 지원하게 만든 장점이 속도저하라는 단점이 되었고, 대형 밴더사들은 속도향상을 위해 -표준안에 신경을 쓰기 보다는- 개별적인 기능향상을 통하여 EJB의 이식성을 나쁘게 하고 말았다.
Spring 프레임워크는 위와 같은 EJB의 단점을 극복해서 J2EE 기술의 복잡한 스펙들을 사용하기 쉽게 해준다.
참고문서 : Spring 프레임워크 워크북
박재성, 2006, 한빛미디어, 1장, "사용자 관리 프로젝트로 알아본 Spring 탄생 배경"
1. 불필요한 클래스와 설정파일의 생성 : EJB를 만들기 위해서는 작성하는 클래스 이외에 최소한 3개 이상의 클래스가 필요하다. 또한 JNDI를 통하여 EJB자원을 관리하기 위하여 설정파일을 추가해야 한다.
2. 분산 어플리케이션 서버의 필요 : 반드시 Web Application Server(WAS)인 EJB Container에서 배포하고 테스트해야 한다.
3. 직렬화에 의한 속도 저하와 표준안의 귄위상실 : 직렬화를 통하여 분산환경을 기본으로 지원하게 만든 장점이 속도저하라는 단점이 되었고, 대형 밴더사들은 속도향상을 위해 -표준안에 신경을 쓰기 보다는- 개별적인 기능향상을 통하여 EJB의 이식성을 나쁘게 하고 말았다.
Spring 프레임워크는 위와 같은 EJB의 단점을 극복해서 J2EE 기술의 복잡한 스펙들을 사용하기 쉽게 해준다.
참고문서 : Spring 프레임워크 워크북
박재성, 2006, 한빛미디어, 1장, "사용자 관리 프로젝트로 알아본 Spring 탄생 배경"



