Spring Ch 1. IoC 컨테이너(2) - Component와 Autowired
Component
- Component-scan에 의해 Bean으로 등록되는 개발자가 직접 작성한 클래스.
- @Controller, @Service, @Repository는 @Component를 확장한 annotation이며 이러한 Annotation이 등록된 컴포넌트들은 컨테이너에 의해 의존성이 주입된다.
- ComponentScan에는 아래와 같이 다양한 설정들이 있다.
basePackages
- 기본적으로 컴포넌트 스캔은 basePackage로 등록된 클래스를 기준으로 하여 작동한다.
- 컴포넌트 스캔은 등록된 클래스가 존재하는 폴더부터 하위폴더로 진행되므로 상위 폴더에 대해서는 스캔 되지 않는다.
- basePackage의 기본값은 component-scan을 사용하는 configuration 설정 파일의 폴더.