반응형
Spring data JPA에서는 paging을 위한 Pageable 인터페이스를 제공합니다.
https://docs.spring.io/spring-data/jpa/docs/2.2.7.RELEASE/reference/html/#core.web.basic
여기서 주의사항은 page가 0부터 시작한다는 것입니다.
0부터 시작하는 것 때문에 협업을 할 때 문제가 발생할 수 있습니다. front에서 사용하는 grid 라이브러리가 1부터 시작하기 때문입니다.
Pageable의 page, size의 기본 설정을 바꾸고 싶다면 PageableHandlerMethodArgumentResolverCustomizer interface를, sort의 기본 설정을 바꾸고 싶다면 SortHandlerMethodArgumentResolverCustomizer interface를 커스터마이징 하면 됩니다.
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Bean
public PageableHandlerMethodArgumentResolverCustomizer customize() {
return p -> {
p.setOneIndexedParameters(true); // 1부터 시작
p.setMaxPageSize(10); // size=10
};
}
}
코드에 수정하기 싫을 경우 다음과 같이 application.yml(properties)에 설정할 수도 있습니다.
spring:
data:
web:
pageable:
default-page-size: 10
one-indexed-parameters: true
728x90
반응형
'웹 개발' 카테고리의 다른 글
HTTP에서 localhost 호출 시 CORS 에러 발생하는 이유 (0) | 2022.10.29 |
---|---|
Spring Security에서 접근 권한 해제 방법 (0) | 2022.07.19 |
AOP에서의 모든 메서드 로깅과 Custom Annotation을 활용한 No Logging 처리 (0) | 2022.05.01 |
java - mkdir와 mkdirs의 차이 (0) | 2022.05.01 |
Spring boot profile 환경별로 설정하는 방법(yaml). (3) | 2022.05.01 |