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

govl6113님의 프로필 이미지
govl6113

작성한 질문수

실전! 스프링 데이터 JPA

data jpa 필드명

작성

·

223

0

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.

1. 강의 내용과 관련된 질문을 남겨주세요.
2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.
(자주 하는 질문 링크: https://bit.ly/3fX6ygx)
3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.
(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)

질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.
=========================================
[질문 템플릿]
1. 강의 내용과 관련된 질문인가요? (예/아니오)
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)
3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)

[질문 내용]

 
안녕하세요! jpa repository를 사용할 때 필드명 관련 질문드립니다.
Post엔티티의 필드로 Member를 갖고 있다면, postJpaRepository에서 findByMember와 findByMemberId를 사용하는 방법이 있을텐데 둘 중 어느 방법이 더 좋은건가요??
findByMember를 하면 외부 조인없이 바로 post의 필드 중에서 member를 찾아오는 것 같고, findByMemberId를 할 경우, member와 외부 조인이 들어간다고 생각합니다. 하지만 보통 무엇을 찾을 때 id로 찾는다는 생각에 findByMemberId 이 방법을 쓰는 사람도 있을 것 같습니다!

답변 2

0

govl6113님의 프로필 이미지
govl6113
질문자

앗 프로젝트는 진행하고 있지 않습니다!
개인적으로 궁금해서 여쭤봅니다..! 

강의자료 내용으로 다시 질문하자면, 제 질문의 요지는 

memberJpaRepository에서

public Optional<Member> findByTeam(Team team)

public Optional<Member> findByTeamId(Long teamId)

중 어느 것이 더 좋은 방법인지 궁금합니다!

 

findByTeam을 하면 외부 조인없이 바로 member의 team 중에서 일치하는 team을 찾아오는 것 같고, findByTeamId를 할 경우, Team과 외부 조인이 들어간다고 생각합니다. 하지만 보통 무엇을 찾을 때 id로 찾는다는 생각에 findByTeamId 이 방법을 쓰는 사람도 있을 것 같습니다!

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

안녕하세요. govl6113님

다음 JPA 기본편 강의의 엔티티 직접 사용 부분을 참고해주세요.

https://www.inflearn.com/course/ORM-JPA-Basic/unit/21730

감사합니다.

0

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

안녕하세요. govl6113님

전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.

구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx

 

주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요

 

추가로 다음 내용도 코멘트 부탁드립니다.

1. 실행 방법을 알려주세요.

2. 어떻게 문제를 확인할 수 있는지 자세한 설명을 남겨주세요.

감사합니다.

 

govl6113님의 프로필 이미지
govl6113

작성한 질문수

질문하기