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

이용조님의 프로필 이미지

작성한 질문수

실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화

주문 조회 V3: 엔티티를 DTO로 변환 - 페치 조인 최적화

책에 페치 조인 대상에는 별칭을 줄수 없다. 라고 나와서 궁금증이 생겼어여

22.07.12 17:07 작성

·

288

1

책 381쪽에 보면 페치 조인 대상에는 별칭을 줄 수 없다라고 나오고, 대신 하이버네이트같은 몇몇 구현체는 지원해 준다고 나와있더라구요

"select distinct o from Order o" +
" join fetch o.member m" +
" join fetch o.delivery d" +
" join fetch o.orderItems oi" +
" join fetch oi.item i",

위와 같은 JPQL에서 o.orderItems 과 페치조인하고 oi로 별칭을 주었는데, 이 별칭을 활용하여 join fetch oi.item i 처럼 또 페치조인을 하는데...

JPA에서 공식 스펙은 아니지만 하이버네이트가 잘 지원해주는 것 맞나요?

최종 질문은 저렇게 페치조인 대상에 별칭주고 거기서 또 페치조인해서... 잘 써도 되는지 궁금합니다. JPA의 공식스펙이 아닌것 같은데 문제없이 동작하는지..

(위 같은 경우는 당연 일대일이나 다대일에서만 쓸것입니다)

답변 1

1

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

2022. 07. 17. 13:41

안녕하세요. 이용조님

다음을 참고해주세요.

https://www.inflearn.com/questions/15876

감사합니다.