본문 바로가기
반응형

쿼리dsl3

[Querydsl] Case When 사용하기 안녕하세요? 이번 시간엔 spring-boot-querydsl 예제를 진행해보려고 합니다. 모든 코드는 Github에 있기 때문에 함께 보시면 더 이해하기 쉬우실 것 같습니다. (공부한 내용을 정리하는 Github와 세미나+책 후기를 정리하는 Github, 이 모든 내용을 담고 있는 블로그가 있습니다. ) 본문 MyBatis로 사용하던 쿼리를 Querydsl로 전환하는 과정에서 만나는 여러 문제중 Case When도 있습니다. 물론 Case When은 안티 패턴이라 생각합니다. 좋은 구조라면 어플리케이션에서 비지니스 로직을 처리해야하기 때문에 이왕 마이그레이션 한다면 이런 로직 역시 어플리케이션으로 옮기시는걸 추천합니다. 하지만, 그 방법이 어렵다면 Querydsl에서 Case When을 쓰셔야겠죠? Q.. 2019. 2. 7.
[Querydsl] 다이나믹 쿼리 사용하기 안녕하세요! 이번 시간에는 Querydsl에서의 다이나믹 쿼리를 어떻게 작성하면 좋을지에 대해 진행합니다. 처음 Querydsl을 쓰시는 분들이 가장 많이 실수하는 부분이니 그럼 시작합니다! 모든 코드는 Github에 있으니 참고하세요 :) 1. 문제 상황 예를 들어 상황에 따라 조건문이 생성 되어야 한다고 보겠습니다. name이 오면 where name = name address가 오면 where address = address phoneNumber가 오면 where phoneNumber = phoneNumber 2개 이상이 오면 모두 포함 where name = name and address = address and phoneNumber = phoneNumber 즉, 파리미터가 어떻게 오는지에 따라 .. 2019. 1. 25.
Spring Boot Data Jpa 프로젝트에 Querydsl 적용하기 안녕하세요? 이번 시간에는 Spring Boot Data Jpa 프로젝트에 Querydsl을 적용하는 방법을 소개 드리겠습니다. 모든 코드는 Github에 있습니다. Spring Data Jpa를 써보신 분들은 아시겠지만, 기본으로 제공해주는 @Query로는 다양한 조회 기능을 사용하기에 한계가 있습니다. 그래서 이 문제를 해결하기 위해 정적 타입을 지원하는 조회 프레임워크를 사용하는데요. Querydsl은 Jooq와 함게 가장 유명한 조회 프레임워크입니다. 이번 포스팅에서는 Spring Boot Data Jpa에서 Querydsl을 어떻게 설정하는지를 이야기합니다. Querydsl의 장점 혹은 왜 써야하는지 등의 내용은 담지 않습니다. 이건 나중에 한번 각잡고 작성해서 공유드리겠습니다 :) 개발환경은 .. 2018. 12. 31.

728x90