从一个简单集合创建一个Spring数据页



是否有允许从Java Collection创建Page实例的Spring实用程序?

类似于:

Page<MyObject> myObjPage = PagingUtils.createPageFromCollection(listOfMyObjects, pageable);

还是应该手动实现分页和排序逻辑?

我想你的问题可以通过这个链接得到回答。

答案似乎是你需要手动执行。

考虑两种场景-

  1. 我想要来自spring的数据作为分页和排序,然后
    I(创建一个(org.springframework.data.domain.sort(的排序对象
Sort sort = sortType.equals("ASC") ? Sort.by(sortField).ascending() :
Sort.by(sortField).descending();

ii(将此排序类型传递给可分页对象

Pageable pageable = PageRequest.of(pageId, pageSize, sort);

iii(将此可分页对象传递给JPA假设方法

yourRepository.findAll(pageable);

这将返回带有分页和排序的数据。

案例2-您的场景-从一个收集对象,我想要带有分页的数据

那么您必须接受PageImpl类的帮助。提供2个建造商来完成

PageImpl(List<T> content, Pageable pageable, long total)

其中

  1. content–此页面的内容(您的收藏对象(
  2. pageable–分页信息
  3. total–可用项目的总数

还有另一个构造函数

PageImpl(List<T> content)

注意-这将导致创建的页面与整个列表相同

Pageable Pageable=PageRequest.of(pageNo-1,pageSize(;

Page Page=questionRepository.findAll(可分页(;

列表问题=page.getContent((;

相关内容

  • 没有找到相关文章

最新更新