인프런 커뮤니티 질문&답변

kangsy763님의 프로필 이미지
kangsy763

작성한 질문수

스프링 핵심 원리 - 기본편

탐색 위치와 기본 스캔 대상

@SpringBootApplication에 대한 질문입니다.

작성

·

291

5

안녕하세요 영한님! 완강하고 리뷰하는데 질문이 생겨서 질문드립니다!!!

이전에 제가 질문으로 AutoAppconfig는 @Configuration 붙어있는데 exclude 안당하고 어떻게 돌아가냐 라는 질문에

new Annotation....(AutoAppconfig.class); 에 넣어주기 때문이라고 하셨습니다.

@SpringBootApplication 은 @ComponentScan이 내부 코드에 들어가 있고 그렇기에 최상단에 위치하는 것이 좋다고 하셨습니다. 그렇다면 이 CoreApplication은 빈등록이 어떻게 되는거죠?? 그냥 얘는 스프링에서 자동으로 해주기 때문에 AutoAppconfig 같이 직접 스프링 컨테이너에 넣어줄 필요가 없는건가요?? 궁금합니다!

답변 2

5

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. kangsy763님

스프링부트는 자바 main을 처음 실행할 때 run의 파라미터로 @SpringBootApplication이 붙은 메인 클래스(CoreApplication.class)를 넘겨줍니다. 그러면 스프링부트가 내부에서 자동으로 해당 클래스를 스프링 빈으로 등록해서 사용합니다. 그렇기 때문에 직접 스프링 컨테이너에 등록하지 않아도 됩니다.

@SpringBootApplication
public class CoreApplication {

public static void main(String[] args) {
SpringApplication.run(CoreApplication.class, args);
}

}

감사합니다.

1

kangsy763님의 프로필 이미지
kangsy763
질문자

저게 저런 의미였군요 좋은 답변 감사합니다~

kangsy763님의 프로필 이미지
kangsy763

작성한 질문수

질문하기