[Spring Boot] 자동 설정 이해

off_sujin·2021년 9월 16일
0

이 글은 inflearn에서 백기선님의 [스프링부트 개념과 활용]을 듣고, 공부하며 정리한 글입니다.


spring boot의 메인 클래스의 상단을 보면 @SpringBootApplication이 붙어있는 것을 볼 수 있다.

@SpringBootApplication를 살펴보면 3가지의 주요 annotation을 볼 수 있다.

하나씩 살펴보자.

@SpringBootConfiguration

본 java class를 Config 파일로 인식시킨다.

@ComponentScan

@Component라는 annotation이 붙어있는 class를 빈으로 등록한다.
@Configuration @Repository @Service @Controller @RestController 등이 이에 속한다.

@EnableAutoConfiguration

org.springframework.boot:spring-boot-autoconfigure 패키지 아래 META-INF 안에 들어있는 spring.factories라는 메타 파일을 읽어들인다.

이 파일에는 다음과 같이 자동 설정 대상이 되는 클래스들이 정의되어 있는데 이들을 빈으로 등록하는 역할을 수행한다.

이렇게 @EnableAutoConfiguration라는 annotation을 이용하여 우리는 별도의 설정을 하지 않더라도 SpringBoot가 미리 정의해놓은 설정을 사용하여 프로젝트를 실행할 수 있는 것이다.

profile
학습 중..

0개의 댓글