tuple로 조회된 결과값을 modelMapper에 담을 수 있을까요?
아래와 같이 querydsl을 사용해서 목록을 조회하고 List로 받은 결과값을 BoardDto 타입으로 변환해서 저장하는것은 잘 됩니다.
List<Board> list = queryFactory.select(board)
.from(board)
.fetch();
List<BoardDto> boardList = new ArrayList<>();
list.forEach(v -> {
boardList.add(modelMapper.map(v, BoardDto.class));
});그런데 문제는 아래와 같이 Tuple로 리턴을 받았을때는 어떻게 담아야 할까요?
List<Tuple> list = queryFactory.select(board.title, board.content)
.from(board)
.fetch();검색을 했을 때.. 아래와 같이 사용을 하면 된다고 하는데.. getElements()라는 메소드는 존재하지 않는데 어떻게 저렇게 사용을 하는지 모르겠네요..(현재 자바 8을 사용하고 있습니다.)
List<Product> products = productsTuple
.stream()
.map(p -> {
Map<String, Object> maps = new HashMap<>();
p.getElements().forEach(te -> {
maps.put(te.getAlias(), p.get(te.getAlias()));
});
return modelMapper.map(maps, Product.class));
})
.collect(Collectors.toList());단순하게 DB에 있는 컬럼만을 사용자로 보내주는 경우는 많지 않고 가공을 해서 보내줘야 하는 경우가 대부분인데..
querydsl로 tuple데이터를 조회했을 때 modelmapper로 담는 방법이 없을까요?
tuple로 조회된 정보들은 Map으로 따로 담아서 view 로 리턴을 해 주는데 그렇게 되면 tuple의 결과값에 따라 map에 넣어주는 데이터들도 많아지고, 중복 비슷한 자료들이 너무 많아져서 보기가 좋지 않은데..
return 할 DTO를 하나 만들어서 그곳에 리턴될 값들으 모두 담아서 리턴을 할 수 있는 방법이 있을까요??
예를들어 게시판 테이블에서 조회를 할 때 특정 필드값들을 select하고, 첨부파일 정보를 select하고, 회원 정보를 select를 해서
이 3개의 테이블에 있는 필요한 값들을 DTO를 하나 만들어서 그곳에 담아서 리턴을 해 주고 싶은데
제가 알고있는 방식은
Map<String, Object> map = new HashMap<>();
map.put("id", tuple(user.id));
map.put("title",tuple(board.title));
map.put("fileName", tuple.attach.fileName));위와같은 식으로 맵에 각각 담아서 맵으로 화면에 리턴을 해 주고 있는데
이런 값들을 담을 DTO를 아래와 같이 만들고
public class returnDTO{
private Long id;
private String title;
private String filename;
}returnDTO 안에 modelmapper나 다른 방법을 사용해서 한꺼번에 담을 수 있는 방법이 있을까요?
값이 얼마 없을때는 그냥 사용을 하면 되는데 값이 많아지고, 하나의 메소드 안에서 여러번 가공을 해서 만들어야 할 경우에는 Map을 만드는 작업을 여러번 반복을 해야하는 상황이 발생하다보니 소스가 많이 지저분해지는 느낌이 많이 듭니다.
답변 1
join에대해 질문드립니다.
0
22
1
SpringBoot 4.X에서의 Querydsl 설정
0
170
2
querydsl 오픈소스에 대한 질문
1
103
1
예제에서의 카운트 쿼리에서 join문과 where문은 필요없지 않나요?
0
128
1
Querydsl 6.X버전에 대해서 어떻게 생각하시나요?
0
357
2
여러 테이블 조인하여 통계치를 구하고자 할 때 어떤 방법이 더 효율적일까요
1
88
1
fetchResults()는 더이상 권장되지 않는다는데 맞나요?
0
173
1
querydsl sum() 메서드 없어요.
0
172
2
build 디렉터리 생성
0
153
2
자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?
0
125
2
현재 Querydsl에서 from절 서브쿼리를 지원하나요?
0
99
1
오타 제보 드립니다.
0
80
2
벌크 연산과 flush, clear
0
85
1
Run As Intellij 로 변경시 Q타입 import 불가
0
98
1
QHello import하기 문제 발생
0
158
2
등록된 함수 보는법(H2Dialect) 질문
0
80
2
5.0부터 Querydsl은 향후 fetchCount() , fetchResult() 를 지원하지 않기로 결정했다고 하는데 이에 맞는 강의
1
209
2
[환경설정 PDF 부트 3.0이후 설명 질문] build.gradle에 compileQuerydsl을 정의하지 않은 상태에서 Gradle->Tasks->other->compileQuerydsl을 클릭하라고 하는 이유가 무엇인가요??
1
215
1
querydsl 설정 문제
0
230
2
quey dsl 설정부분
0
169
2
count 쿼리 관련 질문입니다!
0
80
1
stringtemplate를 이용하여 where절 검색 방법 질문 드립니다.
0
101
1
답변부탁드리겠습니다.
0
95
2
(OrderSpecifier)관련 내용 어디있을가요
0
68
1





