스프링 컨테이너와 스프링 빈(1) 스프링 컨테이너 생성

woohee·2024년 3월 30일

Spring 핵심원리

목록 보기
12/12
post-thumbnail

스프링 컨테이너 생성

ApplicationContext applicationContext =
				new AnnotationConfigApplicationContext(AppConfig.class);
  • ApplicationContext 를 스프링 컨테이너라 한다.
  • ApplicationContext 는 인터페이스이다.
  • 스프링 컨테이너는 xml 기반으로 만들 수 있고, 애노테이션 기반의 자바 설정 클래스로 만들 수 있다.
  • AppConfig를 사용했던 방식이 애노테이션 기반의 자바 설정 클래스로 스프링 컨테이너를 만든 것이다.
  • AnnotationConfigApplicationContext()는 ApplicationContext의 인터페이스 구현체이다.

더 알아볼 것 : 스프링 컨테이너는 BeanFactory와 ApplicationContext로 구분한다. 일반적으로는 ApplicationContext를 스프링 컨테이너라고 한다.

스프링 컨테이너의 생성 과정

1. 스프링 컨테이너 생성

  • 스프링컨테이너를 생성할 때는 구성 정보를 저장해야 한다.
  • 여기서는 AppConfig.class를 구성 정보로 지정했다.

2. 스프링 빈 등록

  • 스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 사용해서 스프링 빈을 등록한다.

빈 이름

  • 빈 이름은 메서드 이름을 사용한다.
  • 빈 이름을 직접 부여할 수 있다. @Bean(name ="memberService2")
  • 빈 이름은 항상 다른 이름으로 부여해야 한다.

3. 스프링 빈 의존관계 설정 -준비

4. 스프링 빈 의존관계 설정 -완료
업로드중..

  • 스프링 컨테이너는 설정 정보를 참고해서 의존관계를 주입(DI)한다.
  • 단순히 자바 코드를 호출하는 것 같지만 차이가 존재한다. 싱글톤 컨테이너에서 설명할 것이다.

스프링 컨테이너를 생성하고, 설정 정보를 참고해 스프링 빈을 등록하고 의존관계도 설정했다.
이제 스프링 컨테이너에서 데이터를 조회해보자


📜Summary

  • 스프링 컨테이너의 생성과정은 스프링 컨테이너 생성, 스프링 빈 등록, 스프링 빈 의존관계 설정으로 진행된다.
  • 스프링 빈을 등록하는 과정과 의존관계 설정은 따로 이루어진다.

0개의 댓글