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

k-dev님의 프로필 이미지
k-dev

작성한 질문수

실전! Querydsl

SQL function 호출하기

@OneToMany 인 collection 멤버 필드까지 Projection 가능한지요?

작성

·

2K

0

QueryDsl 에서 Projection 기능이 깔끔하고 막강한데요.

@OneToMany 인 collection 멤버를 가지고 있는 DTO 로

Projection 을 한번에 가능한지요?  

Team.members  

TeamDto.memberDtos

Lazy 로 @OneToMany Join 시에..

querydsl 쿼리에서 바로 위와 같이 collection 멤버필드까지 한번에 Projection 이 가능한지요?

아니면 일단 entity 로 읽어서 map() 함수를 이용해서

매핑해 주어야 하는지 궁금합니다.

답변 1

2

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

안녕하세요. kepha님

Querydsl은 결국 JPQL을 자바코드로 작성한 것입니다.

Projection을 사용하면 엔티티가 아니라 DB에서 데이터를 flat하게 데이터를 읽어온 상태이기 때문에, 결국 수작업으로 진행해야합니다.

활용2편 마지막을 부분에서 설명하는 것과 동일하다고 이해하시면 됩니다^^

- 주문 조회 V4: JPA에서 DTO 직접 조회

- 주문 조회 V5: JPA에서 DTO 직접 조회 - 컬렉션 조회 최적화

- 주문 조회 V6: JPA에서 DTO로 직접 조회, 플랫 데이터 최적화

감사합니다.

k-dev님의 프로필 이미지
k-dev

작성한 질문수

질문하기