이전 포스팅에서 커서를 사용하여 무한 스크롤을 구현해보았는데 https://jerecord.tistory.com/207 커서를 사용하여 무한 스크롤을 구현해보자.공연 동행 구인 웹 서비스의 백엔드로 참여하며 동행 구인 게시글 목록 조회 API를 구현하며 커서 기반 페이지네이션을 적용해보았습니다😀 페이지네이션(오프셋과 커서) 페이지네이션하면 대jerecord.tistory.com 검색 필터링 기능을 적용함에 따라, 사용자가 설정한 조건을 바탕으로 검색 결과 동적 제공이 필요해졌습니다👀 동적 SQL 쿼리의 필요성을 느꼈고, 네이티브 쿼리를 작성하기에는, 검색 조건도 많고가독성도 떨어지고 오타 이슈도 많을 것 같아 쿼리를 문자가 아니라 자바 코드로 작성할 수 있게 해주는..
롯데시네마 클론 코딩 프로젝트에서 사용자의 티켓 정보를 가져오는 기능 개발 중테이블 간 연관된 정보들이 많아 총 8개의 테이블을 건드려야 하는 상황이 발생했습니다“과연 쿼리문을 8개 사용하는 것이 적합한가?”라는 의문을 가지게 되었습니다🫤 기능 개발 후, 리팩토링을 통해 성능을 향상시켜보았습니다🧙 Refactor1.fetch join을 통해 연관관계 엔티티 함께 조회하기 Refactor2.각 티켓에 대한 티켓 정보는 비동기적으로 가져오기(각 티켓은 서로에게 영향을 미치지 않는 독립적인 데이터이므로) Fetch Join X, 비동기 X - 75349ms(기존 구현)우선 기존에 구현된 코드는 아래와 같습니다!각각의 테이블들에 대해 데이터를 따로 가져오고 있는 것을 확인할 수 ..