TIL:) 페이징 및 정렬

😃 Today I Leaned

  • SpringBoot

⭐알게 된 점⭐

페이징 및 정렬

  • number : 조회된 페이지 번호 (0부터 시작)
  • content : 조회된 상품 정보 (배열)
  • size : 한 페이지에 보여줄 개수
  • numberOfElements : 실제 조회된 개수
  • totalElements : 전체 개수
  • totalPages : 전체 페이지 수

Spring Data 페이징, 정렬 기능 확인

Sort.Direction direction = isAsc ? Sort.Direction.ASC : Sort.Direction.DESC;
Sort sort = Sort.by(direction, sortBy);
Pageable pageable = PageRequest.of(page, size, sort);

Page<Product> products = productRepository.findAllByUser(user, pageable);
  • Pageable은 손쉽게 페이징, 정렬 처리를 하기 위해 제공되는 인터페이스
  • PageRequest는 해당 인터페이스의 구현체
  • 파라미터 : 현재 페이지, 데이터 노출 개수, 정렬 방법 전달
  • 생성된 Pageable 구현 객체를 Spring Data JPA의 Query Method 파라미터에 함께 전달하면 페이징 및 정렬 처리가 완료된 데이터를 Page 타입으로 반환
  • Page 타입에는 Client에 전달해야할 데이터인 totalPages, totalElements 등의 데이터를 함께 포함하고 있음

🐰 END

Spring 강의를 4주차까지 수강을 완료하였는데

아직도 제대로 정리가 안된 부분이 많아 복습이 많이 필요할 것 같다

BELATED ARTICLES

more