Неверно отображаемая страница SpringData PageImpl totalElements

#spring-data

#весна-данные

Вопрос:

Когда я создаю новый объект PageImpl, например :

 new PageImpl<CompanyEntity>(content, new PageRequest(page, size), total);
  

результат неверен.

Когда «размер» отстает от «total», totalElements использует «content.size», а когда «размер» меньше «total», totalElements использует «total».

почему ?

«totalElements» не должен представлять общее количество элементов?

Помогите!

Ответ №1:

установите PageRequest для начала страницы значение 0. Это решило мою проблему.

 PageRequest pageRequest = PageRequest.of(pageNo-1,pageSize,sort);
    Page<T> response = new PageImpl<>(result,pageRequest,totalCount);
  

Комментарии:

1. Что такое result ?

Ответ №2:

я увидел источник «PageImpl» и понял, что :

 this.total = !content.isEmpty() amp;amp; pageable != null amp;amp; (long)(pageable.getOffset()   pageable.getPageSize()) > total?(long)(pageable.getOffset()   content.size()):total;
  

это правильно? почему (long)(pageable.getOffset() pageable.getPageSize()) > total?(long)(pageable.getOffset() content.size()):total ?

Комментарии:

1. У меня тоже такая же проблема. Я не знаю, является ли это проблемой выпуска, потому что несколько недель назад это работало очень хорошо.