Spring 列表到页面的转换 [英] Conversion of List to Page in Spring

查看:24
本文介绍了Spring 列表到页面的转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试在春季将列表转换为页面.我已经使用

I am trying to convert list to page in spring. I have converted it using

new PageImpl(users, pageable, users.size());

new PageImpl(users, pageable, users.size());

但是现在我在排序和分页方面遇到了问题.当我尝试传递大小和页面时,分页不起作用.

But now I having problem with sorting and pagination itself. When I try passing size and page, the pagination doesn't work.

这是我正在使用的代码.

Here's the code I am using.

我的控制器

    public ResponseEntity<User> getUsersByProgramId(
        @RequestParam(name = "programId", required = true) Integer programId Pageable pageable) {

    List<User> users = userService.findAllByProgramId(programId);
    Page<User> pages = new PageImpl<User>(users, pageable, users.size());

    return new ResponseEntity<>(pages, HttpStatus.OK);
}

这是我的用户仓库

public interface UserRepo extends JpaRepository<User, Integer>{

public List<User> findAllByProgramId(Integer programId);

这是我的服务

    public List<User> findAllByProgramId(Integer programId);

推荐答案

我遇到了同样的问题.我使用了子列表:

I had the same problem. I used subList:

final int start = (int)pageable.getOffset();
final int end = Math.min((start + pageable.getPageSize()), users.size());
final Page<User> page = new PageImpl<>(users.subList(start, end), pageable, users.size());

这篇关于Spring 列表到页面的转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆