Backend/Spring

[스프링핵심원리 - 기본편]스프링 컨테이너와 빈

seung_soos 2023. 3. 19. 12:56

스프링 컨테이너 생성

ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);

 

  • 'ApplicationContext' 를 스프링 컨테이너라 한다.
  • 'ApplicationContext' 는 인터페이스이다.
  • 'AppConfig' (@Configuration)를 사용했던 방식이 어노테이션기반의 자바설정 클래스로 스프링 컨테이너를
    만든 것이다.

 

※ 더정확히는 스프링 컨테이너를 부를때 'BeanFactory', 'ApplicationContext'로 구분해서 이야기한다.

 

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

스프링 컨테이너 생성

  • 'new AnnotationConfigApplicationContext(AppConfig.class)'
  • 스프링 컨테이너를 생성할때는 구성정보를 지정해주어야한다.
  • 여기서는 (AppConfig.class)를 구성정보로 지정했다.

 

 

 

 

 

 

 

 

 

 

스프링 빈 등록

  • 스프링 컨테이너는 파라미터로 넘어온 설정 클래스정보를 사용해서 스프링 빈을 등록한다.
  • 빈이름
    1. 빈이름은 메서드 이름을 사용
    2. 빈이름으 직접 부여가능 @Bean(name ="memberService2")

 

※ 빈이름은 항상 다른 이름을 부여해야한다!!

 

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

 

 

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

 

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

 

강의출처 : 스프링 핵심 원리 - 기본편 - 인프런 | 강의 (inflearn.com)