pageinfo 分页==》

发布于 2019-01-18  561 次阅读



import org.omg.CORBA.Object;

import java.util.List;
import java.util.Map;

public class PageInfoSE<T> {
    // 你页面需要展示的集合
    private List<T> list;

    // 你页面需要展示的集合
    private List<Map<T,T>> lists;

    // 显示的总记录数
    private Integer totalNum;
    // 总页数
    private Integer totalPage;

    // 当前页
    private Integer currentPage;
    // 每页显示的数目 (为了防止硬编码可以写在配置文件中)
    private Integer pageSize;

    // 下面两个就是显示的页码 比如start为1 pageNo为5,那么显示的页码数就是1,2,3,4,5
    private Integer start;
    private Integer pageNo;

    public PageInfoSE(Integer totalNum, Integer currentPage, Integer pageSize, Integer pageNo) {
        this.totalNum = totalNum;
        this.currentPage = currentPage;
        this.pageSize = pageSize;
        /*this.pageNo = pageNo;*/

        // 计算总页数
        if (totalNum % this.pageSize == 0)
            this.totalPage = totalNum / this.pageSize;
        else
            this.totalPage = (totalNum / this.pageSize) + 1;

        this.start = currentPage;
        // 比如设置了5条,如果总页数都只有四条,那么肯定都是全是显示哦
        if (pageNo+currentPage-1>=this.totalPage)
            this.pageNo = pageNo;
        else this.pageNo = this.totalPage-currentPage+1;
    }

    public List<T> getList() {
        return list;
    }

    public void setList(List<T> list) {
        this.list = list;
    }

    public Integer getTotalNum() {
        return totalNum;
    }

    public void setTotalNum(Integer totalNum) {
        this.totalNum = totalNum;
    }

    public Integer getTotalPage() {
        return totalPage;
    }

    public void setTotalPage(Integer totalPage) {
        this.totalPage = totalPage;
    }

    public Integer getCurrentPage() {
        return currentPage;
    }

    public void setCurrentPage(Integer currentPage) {
        this.currentPage = currentPage;
    }

    public Integer getPageSize() {
        return pageSize;
    }

    public void setPageSize(Integer pageSize) {
        this.pageSize = pageSize;
    }

    public Integer getStart() {
        return start;
    }

    public void setStart(Integer start) {
        this.start = start;
    }

    public Integer getPageNo() {
        return pageNo;
    }

    public void setPageNo(Integer pageNo) {
        this.pageNo = pageNo;
    }

    public List<Map<T, T>> getLists() {
        return lists;
    }

    public void setLists(List<Map<T, T>> lists) {
        this.lists = lists;
    }
}
使用 ==》 
    public PageInfoSE<Map<Goods,Shops>> selectByTime(String create_time,Integer currentPage, Integer pageSize){
        List<Map<Goods,Shops>> pageMap= goodsRepository.selectByTime(create_time);

        PageInfoSE<Map<Goods,Shops>> pageInfoSE = new PageInfoSE<>(pageMap.size(),currentPage,pageSize,5);

        if(currentPage==pageInfoSE.getTotalPage())

            pageInfoSE.setList(pageMap.subList((currentPage-1)*pageSize, pageMap.size()));
        else
            pageInfoSE.setList(pageMap.subList((currentPage-1)*pageSize, (currentPage-1)*pageSize+pageSize));

        return pageInfoSE;
    }

公交车司机终于在众人的指责中将座位让给了老太太