0. 관련 포스팅QueryDSL 설정하기QueryDSL DTO 반환 방법QueryDSL 동적 쿼리 적용QueryDSL 사용자 정의 레포지토리 적용QueryDSL 페이징 적용 1. 개요QueryDSL에서 JPA Pageable 객체를 받아 페이징하는 부분에 대한 정리 내용이다. 2. 구현이번 포스팅에서는 아래 3가지 메소드에 대한 구현체를 작성해 볼 예정이다. searchPageSimple() : 기본 사용 방법searchPageComplex() : 카운트 쿼리 별도 설정 방법searchPageOptimization() : 별도 쿼리 및 PageExecutionUtils 를 이용한 Page 객체 반환 방법 구현체는 이전 포스팅에서 만든 MemberRepositoryImpl 클래스에 만들었고Member..
0. 관련 포스팅QueryDSL 설정하기QueryDSL DTO 반환 방법QueryDSL 동적 쿼리 적용QueryDSL 사용자 정의 레포지토리 적용 QueryDSL 페이징 적용 1. 개요기존 JPA Repository에 연결하여 별도의 클래스에 QueryDSL 구현체 클래스를 구성하고 JPA Repository 인터페이스에서 호출하여 사용하는 방식에 대한 포스팅이다.(꼭 QueryDSL이 아니더라도 다른 라이브러리 사용에도 적용가능한 기능이다.) 하나의 Repository 를 호출해서 사용하기에 여러 클래스를 호출하지 않아서 좋긴 하지만별도로 연결에 필요한 인터페이스를 구성해야하고 구현체의 클래스 명 규칙을 지켜야한다는 점이 있다. '필수로 구성해야한다기 보다는 하나의 방식으로 봐주면 좋을 듯 하다.' ..
0. 관련 포스팅QueryDSL 설정하기QueryDSL DTO 반환 방법QueryDSL 동적 쿼리 적용 QueryDSL 사용자 정의 레포지토리 적용QueryDSL 페이징 적용 1. 개요QueryDSL 동적 쿼리 생성 시,BooleanBuilder, Where Parameter 사용 방법에 대해 공부한 내용을 정리한 글이다. 해당 포스팅은 김영한님의 QueryDSL 강의를 보고 작성된 내용이나추가적인 공부 내용과 견해가 일부 들어가 있으니 틀린 댓글은 언제나 환영! 2. 구현a. BooleanBuilderBooleanBuilder의 경우,우리가 where 문에 적용하고자 하는 조건을 BooleanBuilder 객체에 적용 후 사용하는 방법이다.@DisplayName("Boolean Builder로 동적 쿼..
0. 관련 포스팅QueryDSL 설정하기QueryDSL DTO 반환 방법 QueryDSL 동적 쿼리 적용QueryDSL 사용자 정의 레포지토리 적용QueryDSL 페이징 적용 1. 개요JPA나 JPA Repository, QueryDSL 등 어떤 조회를 하든 DTO 로 반환해야하는 경우가 발생할 수 있다.QueryDSL 로 DTO를 반환할 때 사용하는 방법에 대한 글이다. (해당 포스팅은 김영한 님의 QueryDSL 강의를 보고 검색한 내용과 함께 정리한 글입니다.) 2. 구현구현 방법에는프로퍼티 접근필드 직접 접근생성자 사용@QueryProjection 사용방법이 있다. DTO 반환 시,기본 생성자로 먼저 객체 생성으로 객체를 만들기 때문에 만들어주어야한다.(생성자 사용이나, @QueryProject..
0. 관련 포스팅QueryDSL 설정하기 QueryDSL DTO 반환 방법QueryDSL 동적 쿼리 적용QueryDSL 사용자 정의 레포지토리 적용QueryDSL 페이징 적용 1. 개요QueryDSL 설정하면서 생겼던 오류와 해결 방법에 대해서 적은 포스팅이다. QueryDSL에 대한 설명은 따로 정리할 생각이고SpringBoot 2.6, 3.0 버전으로 바뀌면서 생겼던 부분에 대한 내용이다. 현재 기준(23.10.16) QueryDSL 은 5.0 버전이 최신이고,Java 8 이상 부터 작동한다. (이전 버전의 경우 4.x 버전의 QueryDSL을 사용하면 된다.) 2. build.gradle아래 gradle 파일은 필요 외 설정은 빼두었으니 QueryDSL에 해당하는 부분만 옮겨 적으면 된다.bu..