Legacy Spring의 등장 배경

EJB는 의도는 좋았지만, 오히려 코드가 복잡하고 ,느려서 EJB 에 너무 종속적이어서 좋은 객체지향의 프로그램을 만들수 없었다.

이러한 문제점을 극복하고 좀 더 나은 객체 지향 프로그램을 만들기 위해 나온것이 스프링이다.

스프링 프레임워크(Spring Framework)는 자바(코틀린) 기반 프레임워크로써,의존성 주입(DI, 과 제어역전(I0C), 관점 지향 프로그래밍(AOP) 등을 통해 느슨한 결합(Loose Coupling)이 형성된다.

이로 인해 어플리케이션의 단위 테스트를 수행하기 용이하고, 효과적인 객체 지향 프로그래밍 애플리케이션을 제작할 수 있도록 도와주는 도구이다.

오픈소스 이며 ,경량급 애플리케이션으로써 애플리케이션 개발에 필요한 기반을 제공해서 개발자가 비지니스 로직 구현에만 집중할 수 있게 한다.

현재 전자정부 표준 프레임워크(e-Gov)의 기반 기술로 채택 되어 공공기관 웹 서비스 개발에 주로 사용 되고 있다.

https://www.egovframe.go.kr/home/sub.do?menuNo=94

Legacy 스프링의 문제점

다양한 프레임 워크와 기술을 지원함에 따라 개발자가 처리해야 할 설정이 많아지고 복잡해지게 되었다.

다른 경쟁 관계에 있는 프레임 워크(Laravel,Django) 등이 심플하고 직관적인 도구 제공하게 되었다.

이러한 문제점을 극복하기 위해 Spring Boot가 개발 되었다

스프링 부트의 특징

자동설정(AutoConfiguration)