스프링과 스프링 부트의 차이는 무엇인가요?
스프링은 기존 기술의 복잡성을 크게 줄인 프레임워크지만, 개발자가 너무 많은 설정을 직접 해줘야 했다.
톰캣 같은
WAS를 설치하고,war로 빌드하고,war파일을WAS에 전달해서WAS를 실행해야 한다.개발을 한 번 시작하기 위해서 필요한 모든 라이브러리들과 버전을 직접 명시해 주어야 한다.
또한, 다양한
config를 개발자가 직접 만들어야 했다.
스프링 부트는 기존의 복잡한 설정을 대신 해준다. 즉, 스프링 부트는 스프링으로 애플리케이션을 만들 때 필요한 설정을 간편하게 처리해주는 별도의 프레임워크다.
스프링 부트 특징
내장 서버
웹 서버를 내장하고 있기 때문에 별도의 웹 서버를 설치하지 않아도 된다.
war가 아닌jar파일이 실행되어main()메서드로 바로 실행 가능하다.
라이브러리 관리
starter기본 라이브러리 묶음을 제공하여 의존성 고민을 줄일 수 있다.스프링 부트는 부트 버전에 맞춘 최적화된 라이브러리 버전을 관리해준다.
자동 구성
스프링 부트는 일반적으로 자주 사용하는 빈들을 자동으로 등록해준다.
DataSource,TransactionManager,JdbcTemplate등
개발자는
.properties나.yml파일을 이용해 필요한 정보들을 입력만 해주면 스프링 부트가 빈 등록을 해준다.
이 외에도 여러가지 모니터링 툴을 제공하여 안정적인 애플리케이션을 유지하도록 지원한다.
참고
Last updated