欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

在pageHelper插件中,如何把一个list集合的对象转换成page对象。

程序员文章站 2022-04-24 15:09:22
...
  1. 在我们日常使用pageHelper插件的过程中,我们通常是在service层中查找数据并把数据直接转换成Page对象。`
  2. 代码如下:
@Override
    public PageResult<Brand> findPage(int page, int size) {
        PageHelper.startPage(page,size);
        Page<Brand> pageResult=(Page<Brand>) brandMapper.selectAll();
        return new PageResult<>(pageResult.getTotal(),pageResult.getResult());
    }`

在service层使用插件封装好的startPage()方法后,直接查找所有的数据,并把返回的数据对象转换成Page对象。

  1. 但是在实战过程中,我们一般都是多表查询,返回来的数据通常都是要映射到其它的bean属性中的,并封装到集合中。这时就需要把一个集合类型的数据转换成page对象。

  2. 解决办法。

1、创建PageResult工具类

package com.qingcheng.entity;

import java.io.Serializable;
import java.util.List;

public class PageResult<T> implements Serializable {

    private Long total;
    private List<T> rows;

    public PageResult(Long total, List<T> rows) {
        this.total = total;
        this.rows = rows;
    }

    public Long getTotal() {
        return total;
    }

    public void setTotal(Long total) {
        this.total = total;
    }

    public List<T> getRows() {
        return rows;
    }

    public void setRows(List<T> rows) {
        this.rows = rows;
    }
}

2、在controller层。(这里在service层中没有使用startPage方法)

PageHelper.startPage(page,5);
PageResult res= new PageResult((long) leaveFormList.size(),leaveFormList);

3、结果演示,返回到前台的页面数据为total和rows(list集合中的数据)
在pageHelper插件中,如何把一个list集合的对象转换成page对象。

相关标签: web开发