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

이무님의 프로필 이미지
이무

작성한 질문수

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

자바 코드로 직접 스프링 빈 등록하기

레퍼지토리가 여러개인 경우

해결된 질문

작성

·

374

0

만약 A라는 인터페이스를 상속받은 B,C,D 클래스가 모두 Repository로 컨테이너에 등록이 되어있고

Service에서는 A 인터페이스를 선언하여 컨테이너로부터 주입을 받고자 한다면, 어떤것이 주입되는 것인가요?

답변 1

1

안녕하세요. 임현준님, 공식 서포터즈 y2gcoder입니다.

만약 A라는 인터페이스를 상속받은 B,C,D 클래스가 모두 Repository로 컨테이너에 등록이 되어있고

Service에서는 A 인터페이스를 선언하여 컨테이너로부터 주입을 받고자 한다면, 어떤것이 주입되는 것인가요?

=> 아마 모든 클래스를 컨테이너에 등록했다면 보통 애플리케이션 시작 시 예외가 발생합니다. 이를 방지하기 위해서 하나만 빈으로 등록하거나, @Qualifier, @Primary 등의 애노테이션을 사용할 수 있을 것 같습니다. 자세한 부분은 영한님의 스프링 핵심 원리 - 기본편 강의를 수강해보시길 권해드립니다!

 

감사합니다.

이무님의 프로필 이미지
이무

작성한 질문수

질문하기