Spring Boot 소개
Spring Boot는 스프링 프레임워크를 기반한 개발 플랫폼.
스프링 부트 기능 정의
- 단독 실행 가능한 스프링 애플리케이션 생성
- 내장 컨테이너로 톰캣, 제티 혹은 언더토우 중에서 선택 가능
- 스타터를 통해 간결한 의존성 구성 지원
- 스프링에 대한 자동구성(Auto-Configuration) 제공
- 더이상 XML 구성 필요없음
- 제품 출시 후 운영에 필요한 다양한 기능 제공
스프링 부트 구성요소
- 빌드도구(Gradle vs Maven)
- 스프링 프레임워크
- 스프링 부트
- 스프링 부트 스타터(spring-boot-starter)
스프링 부트 특징
Spring boot 프로젝트 시작은 spring initializr에서 생성
※ spring initializr : start.spring.io/
spring boot project 생성시 intellj/eceplise도 url로 호출 해서 가져옴.
- 스프링 부트는 Annotation 기반으로 작용
스프링 부트 애플리케이션이 시작되는 곳
@SpringBootApplication
- 자바 애플리케이션이 시작되는 진입점 public static void main() 메서드 안에
SpringApplication 인스턴스를 생성하고 run 실행명령을 내린다.
- spring boot starter는 기능과 관련된 의존성 선언뿐 : 스타터를 이용하면 간결한 의존성 구성 지원 가능
Spring boot 외부 구성 적용 우선순위
1. 실행인자
2. SPRING_APPLICATION_JSON
3. 환경변수
4. 기타
5. application.yml or application.properties
6. application-{}.yml or application-{}.properties