1.스프링 컨테이너의 인스턴스 생성

KakaoTalk_20220817_163432970.jpg

2.메타데이터 생성과 빈등록

(1)자바 어노테이션 을 통한 설정 방법

3)BeanDefinition 인터페이스

KakaoTalk_20220817_163435038.jpg

4)BeanDefinition 정보


public class BeanDefinitionTest {
 AnnotationConfigApplicationContext ac = new AnnotationConfigApplicationContext(AppConfig.class);
// GenericXmlApplicationContext ac = new GenericXmlApplicationContext("appConfig.xml");

 void findApplicationBean() {
 String[] beanDefinitionNames = ac.getBeanDefinitionNames();
 for (String beanDefinitionName : beanDefinitionNames) {
 BeanDefinition beanDefinition =ac.getBeanDefinition(beanDefinitionName);
 
if (beanDefinition.getRole() == BeanDefinition.ROLE_APPLICATION) {
 System.out.println("beanDefinitionName" + beanDefinitionName +
 " beanDefinition = " + beanDefinition);
 }
 }
 }
}

4)스프링 컨테이너의 빈(Bean) 관리

3)스프링 컨테이너에 있는 빈에 접근하기

4)빈 등록

5)DI(의존성 주입)