이 장에서 대부분의 예시들은 설정 메타데이터를 설정하는 것에 XML을 사용하였다. 이전 장에서는(어노테이션 기반의 컨테이너 설정) source-level 어노테이션들을 통해 어떻게 많은 설정 메타데이터들을 제공할 수 있는지 설명했다. 하지만 그 예시들에서도 "기본"이되는 bean 정의들은 XML 파일에 명확히 설정되어있었다. 어노테이션들은 단지 의존성 주입을 해냈던 것이다. 이 장에서는 클래스패스를 스캐닝함으로써 후보가 되는 컴포넌트들을 찾아내는 방법들에 대해 설명한다. 후보 컴포넌트들은 필터 조건을 만족시키며 일치하는 bean 정의를 가지고 있는 클래스들이다. 이는 XML이 bean을 등록해야하는 필요성을 없애준다. 대신 어노테이션(예를들어 @Component), AspectJ 타입의 표현식, 또는 여러분의 커스텀한 필터 조건들을 사용하여 컨테이너에 등록된 bean 정의의 클래스들을 선택할 수 있다.
※ 스프링 3.0부터는, JavaConfig 프로젝트로부터 제공된 많은 기능들이 스프링 프레임워크 core의 일부가 되었다. 이를 통해 bean을 정의하는 데에 전통적인 XML 파일들 대신에 자바를 사용할 수 있게 되었다. @Configuration, @Bean, @Import, @DependsOn과 같은 어노테이션들의 예시들을 통해 새로운 기능들을 어떻게 사용하는지 살펴보자.
'SpringFramework Core - I. IoC 컨테이너 > 10. 클래스패스 스캐닝과 관리받는 컴포넌트들' 카테고리의 다른 글
10.5. 컴포넌트 안에서 bean 메타데이터 정의하기 (0) | 2020.04.14 |
---|---|
10.4. 스캐닝을 커스터마이즈하기 위해 필터 사용하기 (0) | 2020.04.14 |
10.3. 자동적으로 클래스를 찾아 bean 정의로 등록시키기 (0) | 2020.04.14 |
10.2. 메타 어노테이션과 구성 어노테이션 사용하기 (0) | 2020.04.14 |
10.1. @Component와 더 많은 Stereotype 어노테이션들 (0) | 2020.04.14 |