앞서 봤던 것 처럼 Bean은 BeanDefinition 형태로 map에 저장된다. 그렇다면 Bean이 언제 객체화 되고 초기화가 이루어질까? public class AnnotationConfigApplicationContext extends GenericApplicationContext implements AnnotationConfigRegistry { private final AnnotatedBeanDefinitionReader reader; private final ClassPathBeanDefinitionScanner scanner; public AnnotationConfigApplicationContext() { this.reader = new AnnotatedBeanDefinitionReade..

ApplicationContext 부터 천천히 따라가며 Bean이 어떤 과정을 통해 등록 되는 지 알아보자. ApplicationContext BeanFactory를 상속 받은 HierarchicalBeanFatory, ListaableBeanFactory를 상속 받고 있고, 또한 다른 여러 인터페이스도 상속받고 있다. ApplicationContext는 Bean을 등록하고 가져오는데 쓰이는 것으로만 생각하고 있었으나, 소스를 열어보니 그렇지 않았다. 실제로 ApplicationContext의 설명을 보면 Application의 Component에 접근할 수 있는 BeanFactory 메서드 제공 - ListableBeanFactory 인터페이스 포괄적인 방식(Generic Fashion)으로 file ..
- Total
- Today
- Yesterday