필자는 파이널 프로젝트에서 문제풀이 서비스를 담당하게 되었고, 처음으로 메인 페이지를 처리하려고 하였다. 사실 단순 조회인줄 알고 금세 끝날 줄 알았지만...엄청난 오만이였다.ㅎㅎㅎㅎㅎ;;;;;
기존에 JPA findone, finallby이런게 아니라 조건이 여러개이며 조건이 동적으로 바뀌자 기존 JPA로는 감당하기 어려웠고 Query dsl이라는 동적쿼리를 위한 새로운 쿼리문의 필요성을 느끼게 되었다.
너무 안일한 생각으로 검색서비스를 구축할려다 보니 지속적인 문제에 계속 충돌하게 되었다. 예를 들어 1. 동적쿼리 2.DB의 트래픽 줄이는 법 3.Pageable(무한 스크롤)
위의 3가지만 고려해도 대대적으로 바뀌며 재점검해야할 시간이 필요해졌다.
그래서 나는 다시 검색 플로우에 대해 생각하기 시작했다.
첫번째 동적 쿼리를 적용하여 다중 및 순차 조건을 구현하고자 하였고, Query Dsl을 활용해 구현을 성공했다. 이에 대한 내용은 TechTalk에 기재해놓았다 아래에 링크를 달아 놓겠습니다.
https://velog.io/@dbsxogh96/Query-Dsl%EA%B3%BC-%EB%8F%99%EC%A0%81-%EC%BF%BC%EB%A6%AC%EC%9D%98-%EC%A4%91%EC%9A%94%EC%84%B1