사용자 도구

사이트 도구


java:jpa:springdatajpa

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판 양쪽 다음 판
java:jpa:springdatajpa [2022/09/28 08:34]
kwon37xi
java:jpa:springdatajpa [2023/07/10 15:01]
kwon37xi [Pageable 사용 금지]
줄 45: 줄 45:
   * [[https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/PageableDefault.html|@PageableDefault]]   * [[https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/PageableDefault.html|@PageableDefault]]
   * [[https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/config/PageableHandlerMethodArgumentResolverCustomizer.html|PageableHandlerMethodArgumentResolverCustomizer]] : 기본 설정 override   * [[https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/web/config/PageableHandlerMethodArgumentResolverCustomizer.html|PageableHandlerMethodArgumentResolverCustomizer]] : 기본 설정 override
-  * Spring Data 에서 ''Pageable'' 을 인자로 받는 메소드는 기본적으로 **전체 갯수를 세는 쿼리**를 추가로 요청한다.+  * Spring Data 에서 ''Pageable'' 을 인자로 받는 메소드는 기본적으로 **전체 갯수를 세는 쿼리를 추가로 요청**한다.
   * 이 기능은 데이터량이 적은 tutorial 프로젝트 수준에서나 쓸모 있다.   * 이 기능은 데이터량이 적은 tutorial 프로젝트 수준에서나 쓸모 있다.
   * 대부분의 실무 서비스는 이런 방식의 페이징을 사용하면 시스템이 사용할 수 없을 정도로 큰 부하를 일으킨다.   * 대부분의 실무 서비스는 이런 방식의 페이징을 사용하면 시스템이 사용할 수 없을 정도로 큰 부하를 일으킨다.
   * 다른 문제 : page의 시작인 기본이 0인데 문제는 보편적인 서비스의 page 번호는 1로 시작한다. 이를 헷갈려 해서 호출자가 첫번째 페이지를 1로 호출하는 경우가 많다. 설정으로 해결 가능하나 이를 지키지 못하는 경우가 많이 발생한다.   * 다른 문제 : page의 시작인 기본이 0인데 문제는 보편적인 서비스의 page 번호는 1로 시작한다. 이를 헷갈려 해서 호출자가 첫번째 페이지를 1로 호출하는 경우가 많다. 설정으로 해결 가능하나 이를 지키지 못하는 경우가 많이 발생한다.
 +
 +===== Pageable 대신 Slice 사용 =====
  
  
java/jpa/springdatajpa.txt · 마지막으로 수정됨: 2024/02/07 14:43 저자 kwon37xi