2013-04-24 3 views
0

봄 데이터 mongodb와 페이지 매김을 만들려고 노력하지만 첫 번째 imt eworks를 찾았지 만 페이지 번호를 늘리면 항상 0 레코드를 반환합니다. Here's 내 코드 : PAGENUMBER 1 모든 것이 괜찮 때봄 데이터 mongodb 페이지 가능

코드 내 서비스

@Override 
    public List<Purchase> findByUserId(String userId, int pageNumber) { 
     Pageable request = 
       new PageRequest(pageNumber - 1, PAGE_SIZE); 
     return purchaseRepository.findByUserId(userId, request).getContent(); 
    } 

에서 그리고 여기 저장소

@Component 
public interface PurchaseRepository extends MongoRepository<Purchase, Integer> { 

    Purchase findById(@Param("id") String id); 

    Page<Purchase> findByUserId(@Param("userId") String userId,Pageable pageable); 

    List<Purchase> findAll(); 


} 

하지만 같은 내가 말했다. 그러나 두 번째 결과가 0 일 때 PAGE_SIZE = 10이고 예, 이미 데이터베이스를 확인하고 이미 15 개의 문서가 있습니다.

어떤 생각입니까?

+0

그냥 확인 - 찾고있는 사용자 ID에 대해 15 개의 문서가 있습니까? 처음 작동 할 때 - getTotalElements()의 값은 무엇입니까? 두 번째 pageNumber는 2이어야합니다. 왜 10입니까? – gkamal

+0

omg !, 그래서 어리 석다. 나는 pageNumber가 1,2,3,4라는 것을 깨닫는다. page_size가 10이면 1, 10, 20을 보내야한다고 생각했다. – paul

답변

0

pageSize = 10 인 문서가 15 개있는 경우 페이지 0 및 1에있는 데이터는 각각 10 및 5 개의 요소 만 포함하게됩니다. 후속 페이지에서 아무 객체도 가져 오지 않아야합니다.