작성
·
428
0
안녕하세요, 늘 좋은 강의 잘 듣고 있습니다.
다름이 아니라 @EntityGraph를 듣다가 문득 예전 강의에서 ToMany 관계를 조인하게 되면 중복 데이터가 난다고 들었던 것 같은데, 프로젝트에서 @EntityGraph 사용 중 다음과 같이 예상치 못한 현상을 보게되어 문의드립니다.
보기에 JPQL과 함께 사용하지 않으면 @EntityGraph만 사용해도 중복 데이터를 해결하는 것 처럼 보이는데, 제가 이해한게 맞을까요?
그리고 어떤 이유로 인하여 위와 같은 차이가 생기는지, 실무에서 첫번째처럼 사용해도 괜찮은지 궁금합니다.
문서들을 찾아보다가 답을 구하기 힘들어 도움을 요청드립니다.
감사합니다!
답변 2
2
안녕하세요 Yeon님^^
실행된 JPQL을 확인해보시면 바로 그 이유를 찾을 수 있을거에요.
두번째 @Query는 다음과 같이 수정되어야 처음 쿼리와 같아집니다.
"select d from Drive d where d.driveKey = :driveKey"
감사합니다.
1
엇.. 제 부끄러운 질문에 답변 주셔서 감사합니다ㅠ
다른 부분에 정신이 매몰되어 딴 부분만 계속 파고 고민했네요;
사실 저 부분을 @EntityGraph만 선언하면 distinct 되지 않고 여러개 로우가 나오지 않을까 생각한 상태로 테스트 봤는데,
테스트 결과가 1건만 나와서 사고가 이상하게 흐른 것 같습니다.
@EntityGraph를 사용하면 그런 부분까지 고려되어 바인딩되나 보네요.
답변 감사드립니다!