[내배캠 Spring TIL] Spring 페이지네이션 썸네일

[내배캠 Spring TIL] Spring 페이지네이션

Spring
2024년 8월 23일

Spring에서 페이지네이션을 구현하는 법에 대해 공부한 내용을 정리해보겠다.

페이지네이션 #

페이지네이션(Pagination)은 대량의 데이터를 여러 페이지로 나누어 표시하는 기술이다. 한 번에 모든 데이터를 보여주지 않고, 사용자가 필요에 따라 다음 페이지로 이동하면서 데이터를 탐색할 수 있도록 하는 방식이다.

사용 이유 #

  • 성능 개선: 한 번에 모든 데이터를 로드하면 웹페이지의 성능이 저하될 수 있다. 페이지네이션은 한 페이지에 제한된 양의 데이터만 로드하여 성능에서 이점을 가질 수 있다.

  • 트래픽 절약: 한 번에 많은 데이터를 전송하는 대신 필요한 데이터만 전송하므로 서버와 클라이언트 간의 트래픽을 절약할 수 있다.

Pageable #

Pageable 인터페이스를 활용해서 페이지 번호, 크기, 정렬 순서등을 지정할 수 있다.

Pageable pageable = PageRequest.of(pageNumber, pageSize, Sort.by("fieldName").ascending());

Page #

Repository 메서드에서 Page 인터페이스를 사용하여 페이지네이션된 결과를 반환할 수 있다.

Page<Entity> findByStatus(String status, Pageable pageable);

정렬 #

정렬은 페이지네이션과 함께 Sort 객체를 PageRequest에 지정하여 사용할 수 있다.

Pageable pageable = PageRequest.of(0, 10, Sort.by("name").descending());

최근 게시물

김진근 • © 2025