스프링 컨테이너
-ApplicationContext는 인터페이스이며 스프링 컨테이너임
-new AnnotationConfigApplicationContext(AppConfig.class); 에서 AppConfig.class로 구성정보 지정
스프링 컨테이너 안
스프링 빈 저장소
빈 이름(key) | 빈 객체(value) |
AppConfig.class 클래스 정보를 사용해서 @Bean이 붙은 메세드를 호출하여 스프링 빈 등록(네임, 객체)
스프링 컨테이너는 설정정보를 참고해서 의존관계를 주입(DI)
스프링 빈의 라이프 사이클
-객체생성 단계 -> 의존관계 주입 단계 (예외, 생성자 주입은 객체생성때 의존관계 주입)
스프링 빈 조회-상속관계
-부모 타입으로 조회하면, 자식 타입도 함께 조회함(다 끌고옴)
-e.g. Object타입으로 조회 하면 모든 스프링 빈을 조회함
BeanFactory
-스프링 컨테이너의 최상위 인터페이스
-스프링 빈을 관리 및 조회
ApplicationContext
-BeanFactory를 상속
-여러가지 부가기능(메세지소스를 활용한 국제화 기능, 환경변수, 애플리케이션 이벤트, 편리한 리소스 조회)
'웹 프로그래밍 > 스프링' 카테고리의 다른 글
컴포넌트 스캔 (0) | 2023.02.16 |
---|---|
싱글톤 패턴 (0) | 2023.02.15 |
IoC, DI, 컨테이너 (0) | 2023.02.14 |
AppConfig (0) | 2023.02.14 |
좋은 객체 지향 설계의 5가지 원칙(SOLID) (0) | 2023.02.12 |