스프링 컨테이너
스프링 컨테이너는 스프링에서 자바 객체들을 관리하는 공간
자바 객체를 스프링에선 빈(Bean), 스프링 컨테이너에서는 이 빈의 생성부터 소멸까지를 개발자 대신 관리해주는 곳
- ResourcePatternResolver : 리소스를 읽어오기 위한 인터페이스
- EnvironmentCapable : 개발, 운영 등 환경을 분리해서 처리하고, 애플리케이션 구동 시 필요한 정보들을 관리하기 위한 인터페이스
- MessageSource : 메시지 다국화를 위한 인터페이스
- ApplicationEventPublisher : 이벤트 관련 기능들을 제공하는 인터페이스
스프링 컨테이너는 BeanFactory와 ApplicationContext로 나뉘어진다.
- 스프링 컨테이너의 최상위 인터페이스이다.
- 스프링 빈을 관리하고 조회하는 역할을 담당한다.
ApplicationContext
- BeanFactory 기능을 모두 상속받아서 제공한다.
- 다음과 같은 부가기능들을 제공한다.
- 메시지 소스를 활용한 국제화 기능
- 환경변수 - 로컬, 개발, 운영 등을 구분해서 처리
- 애플리케이션 이벤트 관리
- 편리한 리소스 조회
스프링 컨테이너 생성 과정
1) 스프링 컨테이너 생성
비어있는 스프링 컨테이너가 생성된다.
2) 스프링 빈 등록
스프링 설정 파일(Java, XML 등)을 기반으로 컨테이너에 스프링 빈이 등록된다.
3) 스프링 빈 의존관계 설정
스프링 설정 파일(Java, XML 등)을 기반으로 스프링 빈의 의존관계를 주입(DI)한다.
'Java > Spring' 카테고리의 다른 글
JPA study 2주차 영속성 컨텍스트 (0) | 2022.12.17 |
---|---|
[Spring]@Validation @valid 어노테이션 (1) | 2022.12.08 |
[Spring] 스프링 프레임워크(Spring Framework) (0) | 2022.12.04 |
[Spring] 제어의 역전 IoC(Inversion of Control)와 bean (0) | 2022.12.04 |
[Spring] 의존관계 주입(Dependency Injection), 의존성 주입, DI (0) | 2022.12.04 |
댓글