我正在尝试获取一个页面,每个页面中包含许多项目。由于某种原因,此方法返回完整列表,而不是5个项目的页面。
public Page<Item> searchPagedCategoryByName(@RequestParam String name)
{
Category category;
category = categoryRepository.findCategoryByCategoryName(name);
List<Item> items = category.getItems();
Pageable pageable = PageRequest.of(0,5);
Page<Item> page = new PageImpl<Item>(items, pageable, items.size());
return page;
}
答案 0 :(得分:0)
创建扩展 PagingAndSortingRepository 的存储库,该库提供执行分页和排序功能,然后您可以像这样使用
这是我的练习工作区中的代码段。
public interface CategoryRepository extends PagingAndSortingRepository< Category, Long> {
List<Category> findCategoryByCategoryName(String categoryName, Pageable pageable);
}
@Bean
public CommandLineRunner pagingAndSortingRepositoryDemo(CategoryRepository repository) {
return (args) -> {
log.info("Category found with Paging Request PageRequest.of(page [zeroBased Page index], Size)");
repository. findCategoryByCategoryName(name , PageRequest.of(0, 5)).forEach(category -> log.info(" :=> " + category));
};
}