페이징/페이지네이션 - 스프링 데이터 JPA Pageable , Page
Spring Data JPA 정리 5 _ 페이징 & 정렬
@PageableDefault : 시작페이지, 게시글 수, 정렬 등의 페이지 정보를 미리 설정
page : 페이지 시작 번호 설정 (0) ⇒ 실제로는 1페이지부터 보임
⇒ 비즈니스 로직 상에선 -1로 처리(인덱스), View에선 +1로 처리
size : 페이지당 게시글 수 설정 ⇒ 해당 size만큼의 게시글만 요청하여 불러오는 것
sort : 정렬 기준이 되는 컬럼 설정(문자열)
Pageable : @PageableDefault로 설정한 페이지 정보를 담는 인터페이스
⇒ 반환타입 : Page<> (List<>와 유사)
Page<BoardDto> : Pageable의 반환타입. 실행된 페이지 리스트를 담는 객체 (List객체 기반?)
.map() : 지정된 함수로 처리된 page를 반환
⇒ Page<BoardDto> (페이지 리스트) 의 요소 전체를 한번에 변환 가능
.getNumber() : 현재 페이지번호
.getTotalPages() : 총 페이지
.getTotalElements() : 총 레코드(게시글) 수