③ Querydsl 이용한 동적 쿼리 처리 > SPRING_DATA_JPA

본문 바로가기
사이트 내 전체검색

SPRING_DATA_JPA

③ Querydsl 이용한 동적 쿼리 처리

페이지 정보

profile_image
작성자 관리자
댓글 0건 조회 12회 작성일 24-06-16 16:36

본문

데이터베이스를 이용해야 할 때 JPA나 JPQL을 이용하면 SQL작성하거나 쿼리를 처리하는 소스 부분이 줄어들어 편리하지만 에노테이션을 이용해서 지정하기 때문에 고정된 형태라는 단점이 있다.


예를 들어 Board 경우 '검색'' 기능이 필요한데 '제목/내용/작성자'와 같은 단일 조건으로 검색되는 경우도 있지만,
'제목과 내용, 제목과 작성자'와 같이 복합적인 검색 조건이 생길 수 있다.

여러 종류의 속성들이 존재한다면 모든 경우의 수를 별도의 메소드로 작성하는 일이 더 어려울 수 있다.

이러한 문제의 근본 원인은 JPQL이 정적으로 고정되기 때문이다.

이 문제를 해결하기 위해 다양한 방법들이 존재하지만 국내에서 가장 많이 사용되는 방식은 Querydsl 입니다.


Querydsl은 JPA의 구현체인 Hibernate 프레임워크가 사용되는 HQL( Hibernate Query Language )을 동적으로 생성할 수 있는 프레임워크지만 JPA를 지원하고 있다. 

Querydsl을 이용하면 자바 코드를 이용하기 때문에 타입의 안정성을 유지한 상태에서 원하는 쿼리를 작성할 수 있다. 


Querydsl을 이용하기 위해서는 Q도메인이라는 존재가 필요하다. 

Q도메인은 Querydsl의 설정을 통해서 기존의 엔티티 클래스를 Querydsl에서 사용하기 위해서 별도의 코드로 생성하는 클래스이다.

댓글목록

등록된 댓글이 없습니다.

회원로그인

회원가입

사이트 정보

공지사항
자유게시판
질문답변
1:1문의

 

별명 : 터푸가위
주소 : 부산시 동래구 명장로20번길 90
대표 : 박규태
메일 : dancepkt@******.com

접속자집계

오늘
67
어제
252
최대
10,760
전체
263,918
Copyright © dancePKT . All rights reserved.