스프링 컨테이너 생성
//스프링 컨테이너 생성
ApplicationContext applicationContext =
new
AnnotationConfigApplicationContext(AppConfig.class);
- ApplicationContext를 스프링 컨테이너라 한다.
- ApplicationContext는 인터페이스이다.
- 스프링 컨테이너는 XML을 기반으로 만들 수 있고, 애노테이션 기반의 자바 설정 클래스로 만들 수 있다.
! 심화 : 더 정확히는 스프링 컨테이너는 BeanFactory, ApplicationContext로 구분해서 이야기한다. 하지만, BeanFactory를 직접 사용하는 경우는 거의 없기에 일반적으로 ApplicationContext를 스프링 컨테이너라 한다
스프링 컨테이너 생성 과정
1. 스프링 컨테이너 생성
- 스프링 컨테이너를 생성할 때는 구성 정보를 지정해주어야한다
- 여기서는 예제 코드로 작성된 AppConfig,class를 구성 정보를 지정했다.
2. 스프링 빈 등록
- 스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 사용해서 스프링 빈을 등록해 준다.
- 빈 이름은 설정 클래스의 메서드 이름을 사용하거나 임의의 어노테이션 속성을 사용해 지정해 줄수도 있다
- 빈 이름은 항상 다른 이름을 부여! -> 빈 이름이 중복될 경우 다른 빈이 무시되거나 기존 빈을 덮어버리거나 설정에따라 에러가 발생할 수 있기 때문이다
3. 스프링 빈 의존관계 설정
- 스프링 컨테이너는 (AppConfig.class)설정 정보를 참고해서 의존관계를 주입(DI)한다.
Reference
스프링 핵심 원리 - 기본편 - 인프런 | 강의
스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런
www.inflearn.com
'Spring' 카테고리의 다른 글
Spring - 의존 관계 자동 주입 (0) | 2023.04.19 |
---|---|
Spring - 컴포넌트 스캔 (0) | 2023.04.14 |
Spring - 싱글톤 컨테이너 (0) | 2023.04.08 |
Spring - BeanFactory와 ApplicationContext (0) | 2023.04.08 |
Spring - 컨테이너와 IOC/DI (0) | 2023.03.24 |