Hyunebee
스프링의 핵심 원리 이해 - 컴포넌트 스캔 본문
@CompoenetScan은 @Component가 붙은 모든 클래스를 스프링 빈으로 등록한다.
이때 스프링 빈의 기본 이름은 클래스명을 사용하되 맨 앞글자만 소문자를 사용한다.
@Autowired 의존관계 자동주입
생성자에 @Autowired를 지정하면, 스프링 컨테이너가 자동으로 해당 스프링 빈을 찾아서 주입한다.
이때 기본 조회 전략은 타입이 같은 빈을 찾아서 주입한다.
이렇게 자동으로 의존관계를 주입하다보면 같은 빈 이름을 등록하면 어떻게 될까?
1.자동 빈 등록 vs 자동 빈 등록
컴포넌트 스캔에 의해 자동으로 스프링 빈이 등록되는데, 그 이름이 같은 경우 스프링은 오류를 발생시킨다. ConflictingBeanDefinitionException 예외 발생
2.자동 빈 등록 vs 수동 빈 등록
이 경우에는 수동 빈 등록이 우위를 가진다 자동빈을 오버라이딩한다.
'Spring' 카테고리의 다른 글
스프링의 핵심 원리 이해 - 빈 생명 주기 콜백 (0) | 2022.01.05 |
---|---|
스프링의 핵심 원리 이해 - 의존 관계 자동 주입 (0) | 2022.01.05 |
스프링의 핵심 원리 이해 - 싱글톤 컨테이너 (0) | 2022.01.04 |
스프링의 핵심 원리 이해 - 스프링 컨테이너와 스프링 빈 (0) | 2022.01.04 |
스프링의 핵심 원리 이해 - 객체 지향 원리 적용 (0) | 2022.01.04 |