Introduction to the Spring IoC Container and Beans(한글)

이 장에서는 제어의 역전(IoC) 원칙을 스프링 프레임워크에서 구현하는 방법을 다룹니다. 종속성 주입(DI)은 객체가 생성자 인수, 팩토리 메서드의 인수 또는 객체 인스턴스가 생성되거나 팩토리 메서드에서 반환된 후 객체 인스턴스에 설정된 속성을 통해서만 종속성(즉, 함께 작업하는 다른 객체)을 정의하는 IoC의 특수한 형태입니다. 그런 다음 IoC 컨테이너는 Bean을 생성할 때 이러한 종속성을 주입합니다. 이 프로세스는 기본적으로 클래스의 직접 구성 또는 서비스 로케이터 패턴과 같은 메커니즘을 사용하여 종속성의 인스턴스화 또는 위치를 제어하는 Bean 자체의 역방향(따라서 이름, 제어의 역전)입니다.

org.springframework.beansorg.springframework.context 패키지는 Spring Framework의 IoC 컨테이너의 기반입니다. BeanFactory 인터페이스는 모든 유형의 객체를 관리할 수 있는 고급 구성 메커니즘을 제공합니다. ApplicationContextBeanFactory 의 하위 인터페이스입니다. 이를 포함합니다 :

  • Spring의 AOP 기능과의 손쉬운 통합

  • 메시지 리소스 처리(국제화에 사용)

  • 이벤트 게시

  • 웹 애플리케이션에서 사용하기 위한 WebApplicationContext 와 같은 애플리케이션 계층별 컨텍스트.

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

Spring에서는 애플리케이션의 백본(backbone)을 형성하고 Spring IoC 컨테이너에 의해 관리되는 객체를 Bean이라고 합니다. Bean은 Spring IoC 컨테이너에 의해 인스턴스화, 어셈블 및 관리되는 객체입니다. 그렇지 않으면 Bean은 애플리케이션의 많은 객체 중 하나에 불과합니다. Bean과 Bean 간의 종속성은 컨테이너에서 사용하는 구성 메타데이터에 반영됩니다.