inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

실전! Querydsl

프로젝션과 결과 반환 - 기본

tuple자료구조가 어떻게 되어 있는 건가요 ?

1218

작성자 없음

작성한 질문수 0

0

@Test
public void tupleProjection() throws Exception {
    List<Tuple> result = queryFactory
            .select(member.username, member.age)
            .from(member)
            .fetch();

    System.out.println("result = " + result);
    for (Tuple tuple : result) {
        String username = tuple.get(member.username);
        Integer age = tuple.get(member.age);
        System.out.println("username = " + username);
        System.out.println("age = " + age);
    }
}

 

result = [[member1, 10], [member2, 20], [member3, 30], [member4, 40]]

username = member1

age = 10

username = member2

age = 20

username = member3

age = 30

username = member4

age = 40

 

출력값이 위와 같은데 .get()메소드로 꺼내는 걸로 보면 Map과 같은 자료구조인건가 싶기도 하면서, 통째로 출력하면 List<List<>>와 같은 자료구조의 모습이더라구요

tuple은 어떤 자료구조인가요?

java jpa

답변 1

0

y2gcoder

안녕하세요, hjemsti 님. 공식 서포터즈 y2gcoder 입니다.

com.querydsl.core.Tuple은 QueryDSL에서 제공해주는 인터페이스로 쿼리 결과를 튜플 형태로 표현할 때 사용합니다. 여기서 튜플이 무엇인지에 대해 질문해주신 것으로 이해했습니다.

컴퓨터 공학, 거기서도 데이터베이스의 튜플은 쉽게 말해 테이블의 row를 말합니다. 쿼리 결과로 나온 결과 행들을 타입에 맞춰 담을 수 있게 만든 인터페이스가 Tuple입니다. QueryDSL의 각 구현체들(querydsl-jpa 등)은 이 tuple 인터페이스를 구현하여 사용하게 됩니다.

튜플에 대한 자세한 설명은 아래의 링크를 참고해보시길 권해드립니다.

http://wiki.hash.kr/index.php/%ED%8A%9C%ED%94%8C

Tuple 구현체는 IDE를 통해 com.querydsl.core.Tuple 인터페이스로부터 탐색해서 찾아보실 수 있습니다!

감사합니다.

SpringBoot 4.X에서의 Querydsl 설정

0

104

2

querydsl 오픈소스에 대한 질문

1

81

1

예제에서의 카운트 쿼리에서 join문과 where문은 필요없지 않나요?

0

112

1

Querydsl 6.X버전에 대해서 어떻게 생각하시나요?

0

324

2

여러 테이블 조인하여 통계치를 구하고자 할 때 어떤 방법이 더 효율적일까요

1

73

1

fetchResults()는 더이상 권장되지 않는다는데 맞나요?

0

164

1

querydsl sum() 메서드 없어요.

0

163

2

build 디렉터리 생성

0

142

2

자바 ORM 표준 JPA 프로그래밍 - 기본편 듣고 바로 학습해도 괜찮을까요?

0

116

2

현재 Querydsl에서 from절 서브쿼리를 지원하나요?

0

94

1

오타 제보 드립니다.

0

74

2

벌크 연산과 flush, clear

0

77

1

Run As Intellij 로 변경시 Q타입 import 불가

0

90

1

QHello import하기 문제 발생

0

149

2

등록된 함수 보는법(H2Dialect) 질문

0

70

2

5.0부터 Querydsl은 향후 fetchCount() , fetchResult() 를 지원하지 않기로 결정했다고 하는데 이에 맞는 강의

1

201

2

[환경설정 PDF 부트 3.0이후 설명 질문] build.gradle에 compileQuerydsl을 정의하지 않은 상태에서 Gradle->Tasks->other->compileQuerydsl을 클릭하라고 하는 이유가 무엇인가요??

1

203

1

querydsl 설정 문제

0

223

2

quey dsl 설정부분

0

159

2

count 쿼리 관련 질문입니다!

0

75

1

stringtemplate를 이용하여 where절 검색 방법 질문 드립니다.

0

90

1

답변부탁드리겠습니다.

0

91

2

(OrderSpecifier)관련 내용 어디있을가요

0

67

1

중급문법 벌크연산에서

0

84

2