오봉이와 함께하는 개발 블로그
Querydsl - 기본 Q-Type 활용 본문
728x90
기본 Q-Type 활용
Q클래스 인스턴스를 사용하는 2가지 방법
QMember qMember = new QMember("m"); // 별칭 직접 지정
QMember qMember = QMember.member; // 기본 인스턴스 사용
기본 인스턴스를 static import와 함께 사용
아래 방법으로 사용하면 정말 깔끔하게 코드를 작성할 수 있다.
import static study.querydsl.entity.QMember.*;
@Test
void startQuerydsl3() { //member1을 찾아라.
Member findMember = queryFactory
.select(member)
.from(member)
.where(member.username.eq("member1"))
.fetchOne();
assertThat(findMember.getUsername()).isEqualTo("member1");
}
Querydsl은 결과적으로 JPQL의 빌더 역할을 하는데 실행되는 JPQL을 볼 수 없다.
다음 설정을 추가하면 실행되는 JPQL을 볼 수 있다.
spring.jpa.properties.hibernate.use_sql_comments=true
같은 테이블을 조인해야 하는 경우일 때 기본 인스턴스 하나를 통해서 조인을 할 수 없기 때문에 기본 인스턴스와 별칭을 직접 지정해서 조인을 해야 한다. 때문에 같은 테이블을 조인해야 하는 경우가 아니면 기본 인스턴스를 사용하자
인프런 김영한 지식공유자님 강의 : 실전! Querydsl
728x90
'BE > JPA' 카테고리의 다른 글
Querydsl - 결과 조회 (0) | 2022.09.16 |
---|---|
Querydsl - 검색 조건 쿼리 (0) | 2022.09.16 |
Querydsl - JPQL vs Querydsl (0) | 2022.09.15 |
Querydsl - 설정, 예제 도메인 모델 (0) | 2022.09.15 |
스프링 데이터 JPA - 네이티브 쿼리 (0) | 2022.09.14 |
Comments