
[Spring Data JPA] Pageable, Page, Slice 뜯어보기 (JPA에서 Page를 생성하는 내부 동작)
·
Java & Kotlin/JPA
🧐 들어가기전페이스북, 인스타그램, 네이버 카페 등 우리가 자주 사용하는 서비스들에는 공통점이 하나 있다. 바로 모든 데이터를 한 번에 보여주지 않고 필요한 만큼만 잘라서 보여준다는 점이다. 사용자는 현재 보고 있는 데이터를 기준으로 "다음", "이전", 또는 "특정 페이지"를 요청하고 시스템은 이에 맞는 데이터 일부만을 응답한다. 이는 단순히 UX의 문제만은 아니다. 수천, 수만, 수백만 건에 달하는 데이터를 한 번에 응답하는 일은 서버에 큰 부하를 주고 성능 저하나 장애로 이어질 수 있다. 따라서 위 사진처럼 N개의 데이터만 보여주고, 사용자의 요청에 따라 다음 혹은 이전 순번의 N개의 데이터를 볼 수 있게 구현하는 것을 통해 이러한 점을 보완할 수 있다. 하지만, 위와 같은 기능을 구현하기 위해서..