* 핵심 기능
- Spring 빈 객체의 life-cycle 관리
빈 객체 생성, 초기화, 이용, 삭제
- Dependency Injection
빈들 간의 의존 관계에 따라 빈 객체들을 연결
(참조 관계 생성 ---> bean wiring)
* 컨테이너 종류 (Interfaces)
① BeanFactory
- 최상위 부모 역할
- 객체를 생성하고 DI를 처리하는 기본적인 기능 제공
- org.springframework.beans.factory.BeanFactory
② ApplicationContext
- BeanFactory를 확장하여 다양한 부가 기능을 추가 제공
- Annotation 기반 설정, Java code 기반 설정, 웹 개발 관련 기능, 트랜잭션 처리, 메시지 처리 등
- org.springframework.context.ApplicationContext
- BeanFactory의 sub-interface
==> 하위 이기 때문에 BeanFactory의 getBean 메소드 지원 됨
- Annotation, XML로 설정된 것을 이용하는 컨테이너에서 사용되는 클래스
: AnnotationConfigApplicationContext
: GenericXmlApplicationContext
ex) ApplicateionContext context = new GenericXmlApplicationContext("classpath:~~.xml");
//이게 컨테이너를 생성하는 코드야
- 웹 관련 개발할 때 서블릿 관련 컨테이너, Spring MVC Framework에서 사용되는 클래스
: AnnotationConfigWebApplicationContext
: XmlWebApplicationContext
- 설정 파일이 여러개이면... 배열로 먼저 담아주거나...
String[] configLocations = new String[]{"applicationContext.xml", "config/aop.xml"};
ApplicationContext context = new ClassPathXmlApplicationContext(configLocations);
'SPRING' 카테고리의 다른 글
DI XML / 의존 관계 설정 2 (property 방식) (0) | 2019.03.19 |
---|---|
DI XML / 의존 관계 설정 1 (생성자 방식) (0) | 2019.03.18 |
AOP (Aspect-Oriented Programming) (0) | 2019.03.18 |
DI / 의존 관계 설정 방법 2 (Annotation 이용 방법) (0) | 2019.03.18 |
DI / 의존 관계 설정 방법 1 (XML 이용 방법) (0) | 2019.03.18 |