Spring data가 제공하는 페이징과 정렬 기능을 사용할 수 있다.
@GetMapping("/members")
public Page<MemberDto> list(@PageableDefault(size = 5, sort = "id") Pageable pageable){
// 만약 page를 1 부터 시작하고 싶다면? -> 기본이 0
// 아래 처럼 구현체를 새로 만들어 다른 클래스로 넘겨주면됨
// PageRequest request = PageRequest.of(1, 2);
// new MemberDto(member); 를 메소드 레퍼런스를 써서 저렇게 변경 가능
return memberRepository.findAll(pageable)
.map(MemberDto::new);
}
또한 파라미터로 Pageable을 받을 수 있다.
API 호출 시 예시
localhost:8080/members?page=0&size=3:&sort=id,desc
'JAVA' 카테고리의 다른 글
[TEST] 날짜 자동 생성 테스트 (0) | 2022.03.03 |
---|---|
[JAVA] Querydsl 설정 (0) | 2022.03.03 |
[JAVA] Auditing (0) | 2022.02.24 |
[JAVA] 벌크성 수정 쿼리와 @EntityGraph (0) | 2022.02.23 |
[JAVA] Spring data JPA 페이징과 정렬 (1) | 2022.02.17 |