IoC 컨테이너 : Bean
Repository -> Controller
IoC 컨네이너가 관리하는 객체
- applicationContext이 알고있는 객체
어떻게 특정한 인스턴스를 Bean으로 만들어 주는가 ?
1. Component Scan
2. 직접 xml로 입력
Lifecycle Callback
@Component
@Repository
@Service
@Controller
@Configuration
== ApplicationContext.xml
-> 그럼 어노테이션마다 뭐가 다른거지 ?
인터페이스를 상속받으면 등록
@ComponentScan
모든 하위 패키지의 Class를 검사해서 해당하는 어노테이션 인스턴스를 Bean으로 만들어준다
의존성을 주입
-> 의존성 주입을 왜하는거지 ..?
@Autowired
생성자, Setter를 통해 주입 가능
IoC Continer가 각 Bean을 관리하는데, Bean에 의존성을 주입하여 Container가 Bean을 관리할 수 있게한다.