Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

스프링 IoC 컨테이너

  • 의존성 주입(DI)를 이용하여 애플리케이션을 구성하는 컴포넌트를 관리함.
  • 협력하는 컴포넌트 간의 연관관계를 형성함.
  • org.springframework.beansorg.springframework.context 패키지는 스프링 프레임워크 IoC 컨테이너의 기반임.

Tip
title참고
  • IoC / DI와 관련해서는 이곳을 참고할 것

애플리케이션 컨텍스트(ApplicationContext)

  • org.springframework.context.ApplicationContext 인터페이스
  • BeanFactory의 서브 인터페이스임.
  • 더 쉬운 통합을 제공함.
    • 스프링의 AOP 기능
    • 국제화(i18n, internationalization)를 위한 메시지 리소스 핸들링
    • 이벤트 발행(event publication)
    • 애플리케이션 레이어 특정 컨텍스트(예. 웹 애플리케이션을 위해 WebApplicationContext 사용)

빈 팩토리(BeanFactory)

빈 팩토리 or 애플리케이션 컨텍스트?

  • 특별한 이유가 없는 한 애플리케이션 컨텍스트를 사용할 것을 권장함.
    Anchor
    body_ref_01
    body_ref_01
    [1]
기능BeanFactoryApplicationContext
빈 인스턴스화/와이어링YesYes
자동 BeanPostProcessor 등록NoYes
자동 BeanFactoryPostProcessor 등록NoYes
편리한 MessageSource 접근(i18n을 위한)NoYes
ApplicationEvent 발행(publication)NoYes




Anchor
comment_01
comment_01
[1] ^ http://docs.spring.io/spring/docs/current/spring-framework-reference/html/beans.html#context-introduction-ctx-vs-beanfactory