querydsl에서의 값 타입 컬렉션
1103
47 asked
영한님 서포터즈님들 안녕하세요
강의에서는 엔티티 끼리의 DTO 변환은 조인을 통해 쉽게 할 수 있는데, querydsl의 프로젝션을 사용해서 DTO를 변환하는 중에 값 타입 컬렉션은 어떻게 할 수 있는지 궁금해서 여쭤보게 됐습니다.
현재 재 코드입니다
Club.class
PetSizeType(Enum)
EligibleBreed
이제 querydsl을 이용해서 DTO를 변환시키면 not an entity 라는 에러가 발생합니다
일단 값 타입 컬렉션은 entity가 아니기 때문에 해당 에러 로그는 이해가 됩니다
그렇다면 값 타입 컬렉션은 조인도 할 수 없기 때문에 10개의 Club을 가져오려면 select 쿼리가 20개가 나가게 되는데, 이를 최적화하는 방법이 없을까요?
아래의 사진은 하나의 club을 조회할 때 나가는 쿼리입니다!
그리고 제 개인적인 생각으로는 실무에서도 Enum타입을 자주 사용할 것 같은데,, 같은 Enum Type을 저장하기 위해서 따로 엔티티를 만드는 편인가요??(값 타입 컬렉션을 사용하지 않는지 궁금합니다)
감사합니다
Answer 3
1
안녕하세요. gusdn85554님
질문1, 질문2를 확인해보았습니다.
간단하게 답변을 드리자면, ElementCollection도 1:N 관계라 생각하시면 됩니다.
따라서 활용2편에 설명드린 내용으로 최적화해야 합니다.
활용2편을 복습해보시면 답을 찾으실 수 있을거에요.
그리고 DTO로 조회할 때는 1:N 관계의 데이터를 그대로 넣을 수 없습니다. 이 경우 조인한 다음에 필드의 값 하나하나를 직접 매핑해서 넣어주어야 합니다. 지금처럼 1:N 관계 자체를 넣으시면 안됩니다.
감사합니다.
0
안녕하세요 영한님 주말에 답변 감사드립니다
https://drive.google.com/file/d/13TVNk7HjfIfRNDqcPK3RnZ2IyTowL0ey/view?usp=sharing
해당 링크에서 pdf 파일에 설명이 들어있습니다
감사합니다
0
안녕하세요. gusdn85554님
전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.
주의: 업로드시 링크에 있는 권한 문제 꼭 확인해주세요
추가로 다음 내용도 코멘트 부탁드립니다.
1. 실행 방법을 알려주세요.
2. 어떻게 문제를 확인할 수 있는지 자세한 설명을 남겨주세요.
감사합니다.
SpringBoot 4.X에서의 Querydsl 설정
0
86
2
querydsl 오픈소스에 대한 질문
0
71
1
예제에서의 카운트 쿼리에서 join문과 where문은 필요없지 않나요?
0
108
1
Querydsl 6.X버전에 대해서 어떻게 생각하시나요?
0
316
2
여러 테이블 조인하여 통계치를 구하고자 할 때 어떤 방법이 더 효율적일까요
1
69
1
fetchResults()는 더이상 권장되지 않는다는데 맞나요?
0
160
1
querydsl sum() 메서드 없어요.
0
158
2
build 디렉터리 생성
0
136
2
자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?
0
114
2
현재 Querydsl에서 from절 서브쿼리를 지원하나요?
0
90
1
오타 제보 드립니다.
0
71
2
벌크 연산과 flush, clear
0
76
1
Run As Intellij 로 변경시 Q타입 import 불가
0
87
1
QHello import하기 문제 발생
0
147
2
등록된 함수 보는법(H2Dialect) 질문
0
68
2
5.0부터 Querydsl은 향후 fetchCount() , fetchResult() 를 지원하지 않기로 결정했다고 하는데 이에 맞는 강의
1
195
2
[환경설정 PDF 부트 3.0이후 설명 질문] build.gradle에 compileQuerydsl을 정의하지 않은 상태에서 Gradle->Tasks->other->compileQuerydsl을 클릭하라고 하는 이유가 무엇인가요??
1
200
1
querydsl 설정 문제
0
222
2
quey dsl 설정부분
0
158
2
count 쿼리 관련 질문입니다!
0
75
1
stringtemplate를 이용하여 where절 검색 방법 질문 드립니다.
0
89
1
답변부탁드리겠습니다.
0
89
2
(OrderSpecifier)관련 내용 어디있을가요
0
65
1
중급문법 벌크연산에서
0
81
2

