질문&답변
fetch join시 에러 문제 문의입니다!
답변내용 아래와 같이 확인하였습니다! fetch join을 사용하는 이유는 엔티티 상태에서 엔티티 그래프를 참조하기 위해서 사용하는 것입니다. 따라서 당연히 엔티티가 아닌 DTO 상태로 조회하는 것은 불가능합니다. 이 경우 fetch join을 사용하지 마시고, 그냥 순수한 join을 사용하시면 원하는 결과를 얻을 수 있습니다^^ 참고로 관련된 부분을 활용2편에서 DTO를 조회할 때 자세히 설명해드리니 참고해주세요 :) 위 부분의 내용대로라면, select > Q클래스 활용를 활용하나, DTO형식으로 반환 join > Q클래스만을 활용함. 두 형태의 기준 자체가 다르기 때문에 fetchjoin이 안된다는 의미인지 문의드립니다! public List searchAllOrders(SearchRequestDto searchRequestDto) { return queryFactory .select(new QSearchResponseDto( account.name, product.seller, orderInfo.orderPrice, product.category ) ) .from(orderInfo) .join(orderInfo.product, product) .join(orderInfo.account, account) .where( nameEq(searchRequestDto.getAccountName()), sellerEq(searchRequestDto.getSeller()), orderPriceEq(searchRequestDto.getOrderPrice()), categoryEq(searchRequestDto.getCategory()) ) .fetch(); }
- 좋아요수
- 1
- 댓글수
- 2
- 조회수
- 844





