Home [Spring] 1.1. Introduction to the Spring IoC Container and Beans
Post
Cancel
Preview Image

[Spring] 1.1. Introduction to the Spring IoC Container and Beans

이 장에서는 제어 반전 원칙(IoC)의 스프링 프레임워크 구현을 다룬다. IoC는 의존성 주입(DI)이라고도 한다. 그것은 생성자 인수, 팩토리 메소드에 대한 인수 또는 팩토리 메소드에서 생성되거나 반환된 객체 인스턴스(instance)에 설정된 속성을 통해서만 객체가 그들의 종속성(즉, 그들이 함께 작업하는 다른 객체)을 정의하는 과정이다. 그리고 나서 컨테이너는 bean을 생성할 때 그러한 의존성을 주입한다. 이 과정은 근본적으로 서비스 로케이터 패턴(Service Locator pattern)과 같은 메커니즘이나 클래스들의 직접 구성을 사용하여 bean 자체의 의존성 인스턴스화 또는 자체 의존성의 위치를 역전(즉 이름 그대로, 제어 반전)하는 것이다.

org.springframework.beansorg.springframework.context 패키지들은 스프링 프레임워크 IoC 컨테이너의 기본이다. BeanFactory 인터페이스는 모든 유형의 개체를 관리할 수 있는 고급 설정(configuration) 메커니즘을 제공한다. ApplicationContextBeanFactory의 하위 인터페이스다. 여기엔 다음과 같은 내용이 추가된다.

  • Spring의 AOP 기능과의 간편한 통합
  • 메시지 리소스 핸들링(국제화에 사용)
  • 이벤트 게시 (Event publication)
  • 웹 애플리케이션에서 사용하기 위한 WebApplicationContext와 같은 애플리케이션 계층별 컨텍스트들

간단히 말해서 BeanFactory는 구성 프레임워크와 기본 기능을 제공하며 ApplicationContext는 더 많은 기업별 기능을 추가한다. ApplicationContextBeanFactory의 완전한 상위 집합이며 이 장에서는 스프링의 IoC 컨테이너에 대한 설명에 독점적으로 사용된다. ApplicationContext 대신 BeanFactory를 사용하는 방법에 대한 자세한 내용은 The BeanFactory를 참조하자.

스프링에는 당신의 어플리케이션의 백본(backbone)을 형성하고 스프링 IoC 컨테이너에 의해 관리되는 객체들을 beans이라고 부른다. Bean은 Spring IoC 컨테이너에 의해 인스턴스화, 조립 및 관리되는 객체이다. 반면에, Bean은 당신의 어플리케이션에서 단지 많은 객체들 중 하나일 뿐이다. Beans, 그리고 그 사이의 의존성은 컨테이너가 사용하는 구성 메타데이터에 반영된다.

References

This post is licensed under CC BY 4.0 by the author.

[Spring] 1. The IoC Container

[Netflix] 퀸스 갬빗 후기