스프링 컨테이너 생성
ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);
- 'ApplicationContext' 를 스프링 컨테이너라 한다.
- 'ApplicationContext' 는 인터페이스이다.
- 'AppConfig' (@Configuration)를 사용했던 방식이 어노테이션기반의 자바설정 클래스로 스프링 컨테이너를
만든 것이다.
※ 더정확히는 스프링 컨테이너를 부를때 'BeanFactory', 'ApplicationContext'로 구분해서 이야기한다.
스프링 컨테이너의 생성과정
스프링 컨테이너 생성
- 'new AnnotationConfigApplicationContext(AppConfig.class)'
- 스프링 컨테이너를 생성할때는 구성정보를 지정해주어야한다.
- 여기서는 (AppConfig.class)를 구성정보로 지정했다.
스프링 빈 등록
- 스프링 컨테이너는 파라미터로 넘어온 설정 클래스정보를 사용해서 스프링 빈을 등록한다.
- 빈이름
1. 빈이름은 메서드 이름을 사용
2. 빈이름으 직접 부여가능 @Bean(name ="memberService2")
※ 빈이름은 항상 다른 이름을 부여해야한다!!
스프링 빈 의존관계 설정 - 준비
스프링 빈 의존관계 설정 - 완료
- 스프링 컨테이너는 설정 정보를 참고해서 의존관계를 주입(DI)한다.