@GetMapping("/dummy/users")
public List<User> list() {
return userRepository.findAll();
}
//한 페이지당 2건에 데이터를 리턴받기 (size=2)
@GetMapping("/dummy/user")
public List<User> pageList(@PageableDefault(size=2, sort="id", direction = Sort.Direction.DESC) Pageable pageable) {
Page<User> pagingUser = userRepository.findAll(pageable);
List<User> users = pagingUser.getContent();
return users;
}
계속 이어서 Dummy 컨트롤러임.
findAll()은 전체 리스트를 뽑아줌.
@PageableDefault와 어쩌구~~ data.domain.Pageable 객체를 사용하면 페이징 처리도 손쉽게 된다.
오라클 SQL이랑 Mybatis 쓸 때는 페이징한다고 페이징 로직을 맨날 짜서 DTO만들듯이 객체 만들고 아주 난리를 쳤는데 JPA는 그냥 지원해줘서 개꿀이라고 할 수 있음.
.getContent() 처럼 .isLast() 같은 여러 메서드가 있어서 데이터 재단할 때도 사용될 만한 것들이 많음.
페이징은 /dummy/user?page=0 부터 시작한다.
'취업 준비 > Spring boot' 카테고리의 다른 글
18. 예외처리 컨트롤러 만들기 (0) | 2022.01.24 |
---|---|
17. Delete 테스트 (0) | 2022.01.24 |
14. id로 select 테스트 (0) | 2022.01.24 |
13. 회원가입을 위한 insert 테스트 (0) | 2022.01.24 |
12. JSON ? (0) | 2022.01.24 |