작성
·
216
0
좋은 강의 너무 잘 듣고 있습니다.
의문점이 들어서 그런데 configuration파일에 보면 SpringDataJpaMemberRepository가 아닌 MemberRepository를 bean으로 등록시킨것 같은데 SpringDataJapMemberRepository가 실행이 될 수 있는 이유가 궁금합니다.
답변 1
1
안녕하세요. 승수님
SpringDataJpaMemberRepository는 강의에서 설명드리는 것 처럼 스프링이 자동으로 스프링 빈으로 등록해줍니다.
코드를 보면 MemberRepository를 Bean으로 등록한 부분은 없습니다.
대신에 MemberRepository를 스프링으로 부터 주입 받아서 사용하는 부분이 있습니다.
MemberRepository는 인터페이스이고, SpringDataJpaMemberRepository는 MemberRepository 인터페이스를 구현하고 있기 때문에 스프링은 MemberRepository를 주입받으면 등록된 SpringDataJpaMemberRepository를 찾아서 주입해줍니다.
인터페이스와 구현체의 주입에 관계에 대한 자세한 내용은 다음 강의인
스프링 핵심 원리에서 자세히 설명드립니다^^
감사합니다.