작성한 질문수
실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
QueryDSL 소개
작성
·
200
1
영한 스승님 안녕하세요!본 강의에서 작성하신 querydsl 코드에서요. 궁금한 점이 있습니다!
fetchJoin 메서드 호출 없이 join 메서드만 호출할 경우' 주문 엔티티'가 가지고 있는 '멤버 엔티티'를 가져오기 위해 추가적인 쿼리가 호출되지 않을까요?
불필요하게 select 쿼리 내 join 절이 붙어서 나가는 것이 아닌가 궁금합니다.
답변 2
답변해 주셔서 감사합니다!join을 명시하지 않은 경우 cross join이 호출되는군요!
안녕하세요. 레알이님
select 쿼리 내 join절이 붙어 있는 이유는 주문(order) 상태, 회원(member) 이름 으로 where 검색이 필요하기 때문에 where 절에서 사용이 목적입니다.
생각하신 것 처럼 멤버 엔티티가 필요하면 추가 쿼리가 호출됩니다. order를 조회했을 때 member가 필요하면 fetch join을 사용하는 것이 좋겠지요?
감사합니다^^