본문 바로가기
Spring/QueryDSL

프로젝션과 결과 반환 - DTO 조회

by 개복이 2021. 6. 11.

순수 JPA에서 DTO 조회 코드

 

 

 

 

 

 

 

 

  • 순수 JPA에서 DTO를 조회할 때는 new 명령어를 사용해야 한다.
  • DTO의 package 이름을 다 적어줘야해서 지저분하다.
  • 생성자 방식만 지원한다.

 

Querydsl 빈 생성(Bean population)

결과를 DTO 반환할 때 사용

  • 프로퍼티 접근
  • 필드 직접 접근
  • 생성자 사용

 

프로퍼티 접근

 

 

 

 

 

 

 

 

 

 

 

 

 

 

필드 직접 접근

 

 

 

 

 

 

 

 

 

 

 

 

 

별칭이 다를 때

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 프로퍼티나, 필드 접근 생성 방식에서 이름이 다를 때 해결 방안
  • ExpressionUtils.as(source, alias) : 필드나, 서브 쿼리에 별칭 적용
  • username.as("memberName") : 필드에 별칭 적용

 

생성자 사용

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Reference

  • 자바 ORM 표준 JPA 프로그래밍
  • QueryDSL

'Spring > QueryDSL' 카테고리의 다른 글

동적 쿼리 - BooleanBuilder  (0) 2021.06.13
프로젝션과 결과 반환 - @QueryProjection  (0) 2021.06.12
프로젝션 결과 반환 - 기본  (0) 2021.06.10
상수, 문자 더하기  (0) 2021.06.09
case 문  (0) 2021.06.08

댓글