Spring(JAVA Framework)/Spring Core

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

걸어가는 신사 2021. 8. 16. 00:36

1. 스프링 컨테이너

스프링 프레임워크는 스프링의 빈을 생성하고 관리하는 컨테이너를 가지고 있다. (DI 컨테이너 역할을 한다.)

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

ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);
  • ApplicationContext를 스프링 컨테이너라 한다.
  • ApplicationContext는 인터페이스이다.
  • 자바 설정 클래스를 기반으로 스프링 컨테이너를 만들었다. 
스프링 컨테이너 생성 호출 시 생성 과정에 대해서 알아보자.

 

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

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

  • 스프링 컨테이너를 생성할때 설정 클래스(AppConfig.class)를 지정해주어야 한다.

 

(2) 스프링 빈 등록

  • 스프링 컨테이너는 파라미터로 넘어온 설정 클래스 정보를 사용해서 스프링 빈을 등록한다.
  • 빈 이름은 메서드 이름을 사용한다.
  • 빈 이름을 직접 부여할 수 도 있다.
    • @Bean(name="memberService2")
    • 빈 이름은 항상 다른 이름을 부여해야 한다. 같은 이름을 부여하면, 다른 빈이 무시되거나, 기존 빈을 덮어버리거나 설정에 따라 오류가 발생한다.

 

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

 

(4) 스프링 빈 의존관계 설정 - 완료

  • 스프링 컨테이너는 설정 정보를 참고해서 의존관계를 주입(DI)한다.

 

  •  

본 글은 김영한 님의 "스프링 핵심 원리"(인프런) 유료 강의를 들으며 요약, 정리하고 일부 정보를 추가 작성한 것입니다.

저작권 문제시 903yh@naver.com으로 연락 주시면 삭제하겠습니다.

반응형