인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

임현강님의 프로필 이미지
임현강

작성한 질문수

스프링 핵심 원리 - 기본편

컴포넌트 스캔과 의존관계 자동 주입 시작하기

@ComponentScan과 @Autowired의 순서

작성

·

237

1

안녕하세요, 질문 드리겠습니다~

컴포넌트 스캔을 통해 빈 등록이 이뤄지는 동시에 오토와이어드 자동 DI가 이루어지는 과정에서 궁금증이 있습니다.

예를들어.. 

@Component
MemberServiceImpl 클래스가

@Autowired
private  MemberRepository memberRepository;
를 DI 받아야 하는 경우라고 가정하겠습니다.

아직 MemberRepository의 구현체인 MemoryMemberRepository가 ComponentScan이 이뤄지기 전에 MemberServiceImpl이 먼저 ComponentScan에 들어간다면.. 

Autowired DI를 해주려고 할 MemoryMemberRepository 빈을 찾지 못 할 텐데요. 

이렇게 ComponentScan의 순서에 의해 발생하는 문제들이 내부적으로 어떻게 해결되는지 궁금합니다.

감사합니다!

답변 1

0

김영한님의 프로필 이미지
김영한
지식공유자

안녕하세요. 현강님

컴포넌트 스캔으로 먼저 전체를 다 읽고, 내부에서 어떻게 빈들 만들어야 할지 순서들을 조정하는 과정이 있습니다.

감사합니다.

임현강님의 프로필 이미지
임현강
질문자

살짝은 지엽적인 부분 같기도 하네요ㅎㅎ 

감사합니다!

임현강님의 프로필 이미지
임현강

작성한 질문수

질문하기