Hyunebee
스프링의 핵심 원리 이해 - 의존 관계 자동 주입 본문
다양한 의존 관계 주입방법
1. 생성자 주입
생성자 호출시점에 딱 1번만 호출되는것을 보장한다.
불변 필수 의존관계에 사용한다.
2. 세터주입
변경, 선택 가능성이 있는 의존 관계에 사용
3. 필드주입
사용하지 말자(테스트가 어렵고, DI프레임워크가 없다면 사용할 수 도 없다.)
4. 메서드 주입
한번에 여러 필드를 주입 받을 수 있다.
빈 우선 순위 결정
@Qualifier
-> @Qualifier("mainDiscountPolicy")
-> public DiscountPolicy setDiscountPolicy(@Qualifier("mainDiscountPolicy")
이렇게 서로 매칭 시켜서 사용한다. 만약 해당 빈이름이 없다면 오류 발생
@Primary
해당 어노테이션이 붙어있는것이 우선순위를 가진다.
둘중 우선순위는 @Qualifier > @Primary
'Spring' 카테고리의 다른 글
스프링의 핵심 원리 이해 - 빈 생명 주기 콜백 (0) | 2022.01.05 |
---|---|
스프링의 핵심 원리 이해 - 컴포넌트 스캔 (0) | 2022.01.05 |
스프링의 핵심 원리 이해 - 싱글톤 컨테이너 (0) | 2022.01.04 |
스프링의 핵심 원리 이해 - 스프링 컨테이너와 스프링 빈 (0) | 2022.01.04 |
스프링의 핵심 원리 이해 - 객체 지향 원리 적용 (0) | 2022.01.04 |