소통하는 개발자 Sean
article thumbnail
springboot queryDSL 적용, JPQL -> queryDSL로 변경, 이유 + 성능체크
Web Programming/JPA 2023. 11. 3. 14:28

queryDSL에 대해 더 자세히 알고 싶다면, 1편을 보고오시는것을 추천드립니다! 2023.11.03 - [분류 전체보기] - queryDSL이란? 간단한 설명과 사용이유 queryDSL이란? 간단한 설명과 사용이유 👉 글을 쓰게 된 이유 저는 JPA가 복잡한 쿼리를 효율적이고 편리한 개발을 지원하지만 특히 복잡한 쿼리를 작성할 때 일부 단점이 있다고 생각했습니다. JPA는 기본적으로 단순한 CRUD 쿼리와 간 sean-lets-go.tistory.com 👉 Gradle 의존성과 세팅 plugins { id 'com.ewerk.gradle.plugins.querydsl' version '1.0.10' // Q 클래스 생성 플러그인 // ... } def querydslDir = "$buildDir/ge..

article thumbnail
queryDSL이란? 간단한 설명과 사용이유
Web Programming/JPA 2023. 11. 3. 13:52

👉 글을 쓰게 된 이유 저는 JPA가 복잡한 쿼리를 효율적이고 편리한 개발을 지원하지만 특히 복잡한 쿼리를 작성할 때 일부 단점이 있다고 생각했습니다. JPA는 기본적으로 단순한 CRUD 쿼리와 간단한 조인에 대한 지원을 제공하지만, 복잡한 조인, 하위 쿼리, 복잡한 집계 함수 등과 같이 복잡한 쿼리에 대한 처리는 다소 제한적이기 때문입니다. 특히 JPQL로 쿼리를 작성할 때는 개발자가 직접 SQL 쿼리를 작성하고 런타임에 오류를 볼 수 있었으니 이는, SQL 매핑 프레임워크인 mybatis와 다를게 없다고 생각했었습니다. 허나, 며칠전 기술면접을 보다가 JPA의 JPQL에 이런 관점을 가지고 있다고 대화를 나누던 도중, 면접관님께서 "queryDSL"이 해당 문제를 해결해 줄 수 있을것 같다고 조언을 ..