• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    해결됨

섹션 5

24.05.08 18:01 작성 24.05.08 18:08 수정 조회수 51

0

private final MemberRepository memberRepository;

public MemberService(MemberRepository memberRepository) {
    this.memberRepository = memberRepository;
}

/**
 * 회원 가입
 */
public Long join(Member member) {
    // 같은 이름이 있는 중복 회원X
    validateDuplicateMember(member);// 중복 회원 검증

    memberRepository.save(member);
    return member.getId();
}

MemberRepository는 인터페이스인데, 아래 join에서 memberRepository.save(member)을 어떻게 사용하는 건가요? 인터페이스는 객체를 만들지 못하고 구현체를 만들어야하는데 그러면 필드에서 MemberRepository의 구현체인 MemoryMemberRepository를 받아야 되는게 아닌가 했습니다.

이해가 잘 되지않아서 질문드립니다ㅠㅠ

답변 1

답변을 작성해보세요.

1

David님의 프로필

David

2024.05.08

안녕하세요. 권정익님, 공식 서포터즈 David입니다.

이 부분과 관련된 것은 컴포넌트 스캔과 자동 의존관계 설정편에서 자세히 설명하고 있사오니 참고해 주세요:)

감사합니다.