시작하기 앞서
처음 배우는 스프링 부트 2를 읽다가 글 목록을 불러오는 예제를 따라해봤다. 예제에서는 가장 먼저 만들어진 글 부터 불러왔지만 우리가 평소에 마주하는 게시판들은 모두 최신 글을 가장 먼저 불러온다. 따라서 예제를 수정해서 최신 글부터 불러오는 것을 시도했다.
Pagination
쪽수 매기기라는 뜻이다. 추후 게시판을 구현 할 일이 생긴다면 Spring boot Pagination examples 등으로 검색하면 좋을 것 같다.
Pagable
Spring Data JPA에서 제공하는 편리한 객체이다. 책을 읽고 나중에 더 깊게 공부하자
Pagination을 위한 Pageable 객체
Pageable 객체의 구현체인 PageRequest.of를 사용한다. 그래서 먼저 PageRequest의 코드를 먼저 살펴보자.
public static PageRequest of(int page, int size) {
return of(page, size, Sort.unsorted());
}
public static PageRequest of(int page, int size, Sort sort) {
return new PageRequest(page, size, sort);
}
기존 코드
pageable = PageRequest.of(pageable.getPageNumber() <= 0 ? 0 : pageable.getPageNumber() - 1,
pageable.getPageSize());
기존의 코드는 위에 Sort가 없는 메소드를 사용했다. 그랬더니 오름차순(ascending)으로 글이 정렬되었다. 따라서 내림차순(descending)으로 변경해줄 필요가 있었다. 기존 코드의 실행 화면을 살펴보자.
변경 코드
pageable = PageRequest.of(pageable.getPageNumber() <= 0 ? 0 : pageable.getPageNumber() - 1,
pageable.getPageSize(), Sort.by("idx").descending());
idx를 기준으로 내림차순으로 정렬하라고 명령했고 사진처럼 잘 정렬이 되었다.
'WEB SERVER [ 웹 서버 ] > SPRING BOOT [스프링 부트]' 카테고리의 다른 글
Spring Boot 2.2.2 버전 Live Reload 적용하기 (0) | 2020.01.16 |
---|
최근댓글