작성
·
187
3
안녕하세요 강사님! 스프링 부트를 사용한 것과 사용하지 않고 하는 방법이 헷갈려서 아래 질문들이랑 강의를 토대로 정리해봤는데 제가 이해한 내용이 맞나요? 번거로운 질문 드려서 죄송합니다ㅜ
/**
* # spring boot 사용 x
* new AnnotationConfigApplicationContext(AutoAppConfig.class);
* 1. ApplicatonContext(스프링 컨테이너) 생성
* 2. AutoAppConfig를 스프링 빈으로 등록
* 3. AutoAppConfig에 @ComponentScan이 달려있으므로, @Component 어노테이션이 달려있는 클래스를 스프링 컨테이너에 빈으로 등록
*
* # spring boot 사용
* 1-1. @SpringBootApplication 이 붙어있는 class(이 예제에서는 CoreApplication)의 main 함수가 실행.
* 1-2. @SpringBootTest 테스트 실행 -> @SpringBootApplication 어노테이션을 찾아감
* 2. 위 둘 중 하나를 하면 스프링부트 내부에서 자동으로 ApplicationContext (스프링 컨테이너)를 생성.
* 3. @SpringBootApplication에는 @ComponentScan이 포함되어 있음.
* => @Component 어노테이션이 달려있는 클래스를 스프링 컨테이너에 빈으로 등록
* (@Configuration에도 @Component가 포함되어있으므로 이 어노테이션이 달려있는 설정 클래스도 빈으로 컨테이너에 등록,
* 이때 만약 @Bean 어노테이션이 있으면 빈을 컨테이너에 등록)
*/
감사합니다!