Spring Core - Container & Bean

iseon_u·2022년 6월 25일
0

Spring

목록 보기
20/33
post-thumbnail

Container


스프링 컨테이너 생성 과정

// 스프링 컨테이너 생성
ApplicationContext applicationContext = new AnnotationConfigApplicationContext(AppConfig.class);
  • ApplicationContext 를 스프링 컨테이너라고 한다.
  • ApplicationContext 는 인터페이스이다.
  • 스프링 컨테이너는 XML 을 기반으로 만들 수 있고, 어노테이션 기반의 자바 설정 클래스로 만들 수 있다.
  • ApplicationContext 인터페이스의 구현체
  • new AnnotationConfigApplicationContext(AppConfig.class);

정확히는 스프링 컨테이너를
BeanFactory, ApplicationContext 로 구분해서 이야기한다.
일반적으로 ApllicationContext 를 스프링 컨테이너라 한다.

1. 스프링 컨테이너 생성

  1. new AnnotationConfigApplicationContext(AppConfig.class)
  2. 스프링 컨테이너를 생성할 때는 구성 정보를 지정
  3. AppConfig.class 를 구성 정보로 지정

2. 스프링 빈 등록

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

빈 이름

  • 빈 이름은 메서드 이름을 사용
  • 직접 부여 가능
    • @Bean(name=”memberServiceA”)
⚠️ **빈 이름은 항상 다른 이름을 부여** 같은 이름을 부여하면 다른 빈이 무시되거나 기존 빈을 덮어버리거나 설정에 따라 오류 발생

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

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

    스프링은 빈을 생성하고, 의존 관계를 주입하는 단계가 나누어져있다.
    자바 코드로 스프링 빈을 등록하면 생성자를 호출하면서 의존 관계 주입도 한번에 처리된다.

profile
🧑🏻‍💻 Hello World!

0개의 댓글