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

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

빨간고무장갑 싸이코 펭귄님의 프로필 이미지
빨간고무장갑 싸이코 펭귄

작성한 질문수

스프링 핵심 원리 - 기본편

스프링으로 전환하기

getBean 타입 지정

작성

·

186

1

MemberService memberService = 
ctx.getBean("memberService", MemberService.class);
MemberService memberService = 
ctx.getBean("memberService", MemberServiceImpl.class);

 

이 2개의 차이점이 궁금합니다!

결과는 똑같이 나오는데 인터페이스를 넘긴 이유가 따로 있을까요?

앞에서 말씀하신대로 구현보단 역할에 의존해야 하기 때문인가요??

 

 

답변 1

2

안녕하세요. 에러나면짖는개님, 공식 서포터즈 David입니다.

네, 맞습니다.

구현체 타입(MemberServiceImpl.class)을 지정하게 되면 Configuration의 memberService()에서 반환하는 객체가 다른 구현체로 변경되었을 때는 MemberServiceImpl.class 타입으로 빈을 가져오지 못합니다.

감사합니다.

강의 뒤쪽에 잘 설명해주신 부분이였네요 ㅋㅋ

답변 감사합니다!!

빨간고무장갑 싸이코 펭귄님의 프로필 이미지
빨간고무장갑 싸이코 펭귄

작성한 질문수

질문하기