Spring Container1


<aside> 💡 스프링 컨테이너는 스프링 프레임워크의 핵심 부분이다. 이 컨테이너는 ⭐️BeanFactory⭐️를 상속받는 ⭐️ApplicationContext⭐️ 인터페이스를 구현한다. Bean은 스프링 컨테이너에 의해 인스턴스화, 구성, 관리되는 객체(Class)이다.

</aside>

  1. BeanFactory: BeanFactory는 가장 기본적인 형태의 스프링 컨테이너로서, 빈의 생성, 설정, 관리 등의 역할을 담당한다. BeanFactory는 빈의 생명주기를 관리하고, 의존성 주입(DI)를 지원하며, 빈 간의 관계를 설정하는 기능을 제공한다.
  2. ApplicationContext: ApplicationContext는 BeanFactory의 확장된 형태로, BeanFactory의 모든 기능을 포함하고 추가적으로 메시지 소스 처리(국제화 지원), 이벤트 발행, 애플리케이션 계층 통합 지원 등 엔터프라이즈 전반에 걸친 기능을 제공한다.

<aside> 1️⃣ 스프링 컨테이너의 주요 기능

</aside>

<aside> 💡 ApplicationContext란 무엇인가?

</aside>

<aside> 1️⃣ ApplicationContext의 구성

</aside>

Untitled

<aside> 2️⃣ ApplicationContext의 종류

</aside>

  1. AnnotationConfigApplicationContext: → 주로 사용함 어노테이션 기반의 설정 정보를 읽는 데 사용되는 ApplicationContext이다. **@Configuration**과 같은 어노테이션을 사용한 Java 설정 클래스를 읽어들인다.

  2. ClassPathXmlApplicationContext:

    XML 기반의 설정 정보를 읽는 데 사용되는 ApplicationContext이다. 클래스패스에서 지정된 위치의 XML 설정 파일을 읽어들인다.

  3. FileSystemXmlApplicationContext: 파일 시스템 경로에서 XML 설정 파일을 읽는 데 사용되는 ApplicationContext이다.

  4. WebApplicationContext: 웹 어플리케이션에서 사용되는 ApplicationContext이다. 서블릿 컨테이너와 통합하여 웹 어플리케이션에 대한 설정을 담당한다.

<aside> 3️⃣ ApplicationContext의 사용이점

</aside>