스프링 컨테이너

김정현·2023년 7월 17일
0

spring

목록 보기
1/3

1. 스프링 빈이란?

  1. 서버가 시작되면 스프링 서버 내부에 거대한 컨테이너를 만들게 된다.
  2. 컨테이너 안에는 클래스가 들어가게 된다.
  3. 스프링 컨테이너는 필요한 클래스를 연결해준다.




2. 스프링 컨테이너를 사용하면

1. 제어의 역전을 사용하여 Repository를 결정 (IOC)
2. 컨테이너가 선택해 Service에 Repository를 넣어주는 가정을 의존성 주입 (DI)
3. Repository중 @Primary Annotation으로 조절 가능하다.

3. Bean

@Configuration

  • 클래스에 붙이는 Annotation
  • @Bean을 사용할 때 함께 사용해 주어야 한다.

@Bean

  • 메소드에 붙이는 Annotation
  • 메소드에서 반환되는 객체를 스프링 빈에 등록한다.

4. Component

  • 주어진 클래스를 컴포넌트로 간주한다.
  • 이 클래스들은 스프링 서버가 뜰 때 자동으로 감지된다.

5. Bean을 주입 받는 방법

    1. 생성자 사용 : @Autowired 생략이 가능하다
    1. setter 사용
    1. 필드에 바로 사용

6. @Qualifier

  • 스프링 Bean 사용하는 쪽, 스프링 빈을 등록하는 쪽 모두 사용가능
  • 스프링 빈을 사용하는 쪽에서만 쓰면, 빈의 이름을 적어주어야 한다.
  • 양쪽 모두 사용하면, @Qualifier 끼리 연결된다.

@Qualifier 와 @Primary 중 @Qualifier를 더 우선 순위로 둔다.

profile
개발일지

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

아주 유익한 내용이네요!

답글 달기