본문 바로가기

카테고리 없음

Spring Boot Tutorial

스프링 부트는 스프링 프레임워크에 RAD 기능을 제공하는 모듈이며 starter templates에 의존적이다.

1. 스타터 템플릿

스트링 부트 스타터들은 특정 기능을 위한 연관된 의존성들의 모음
예를 들면, 예전 같았으면, Spring WebMVC 애플리케이션을 만들기 위해 필요한 dependency 라이브러리들을 모두 알아서 include 시켜야 했고 이는 서로 호환되지 않는 버전 충돌로 인한 런타임 에러 등을 발생시켰다.
그러나, 스프링 부트를 사용하면 dpendency에 spring-boot-stater-web만 추가하면 된다.
spring-boot-stater-web 에는 내부적으로 필요로 하는 모든 dependency가 포함되어 있다. 또한, 모든 필요 버전 정보는 스프링 부트 버전과 연관되기 때문에 따로 지정할 필요가 없다.

2. 자동설정

스프링 부트는 클래스패스에 있는 라이브러리들을 스캔해서 알아서 최적의 설정을 해준다.
자동설정은 항상 사용자 정의 빈이 등록된 뒤에 적용된다.

3. 내장서버

tomcat서버가 내장되어 있다 : 서버설정없이 그냥 일반 프로그램 실행하듯이 프로젝트를 실행할 수 있다.
기본내장되어 있는 tomcat말고 다른 서버를 내장시킬 수 있다.

4. 애플리케이션 부트스트랩

@SpringBootApplication = @Configuration + @EnableAutoConfiguration + @ComponentScan
설정 클래스나 파일들을 스캔해서 이를 spring context에 bean으로 생성 및 등록하고 실행시킨다.

5. 스프링  부트의 장점

- 호환되는 버전 정보의 자동관리로 라이브러리 의존성 충돌 해결 (런타임 에러 유발) 
- 기본적으로 자동설정을 해주고 필요한 경우 필요한 부분에 대해서만 사용자가 설정하도록 함
- 톰캣을 내장하고 있어서 개발과 테스트가 용이함
- 이클립스나 인텔리J와 통합이 잘 되어 있다.