java利用list写分页

1、分页的属性模型

public class PageVo {
    private int countPage;// 总页数

    private int conutNote;// 总条数

    private int previousPage;// 上一页

    private boolean previous;// 判断上一页

    private int nextPage;// 下一页

    private boolean next;// 判断下一页

    private int nowPage;// 当前页

    private int HeadPage;// 首页

    private int pageNote;// 每一页显示的条数

    public int getConutNote() {
        return conutNote;
    }

   
    public void setConutNote(List list) {
        this.conutNote = list.size();
    }

    public int getCountPage() {
        return countPage;
    }

    public void setCountPage(List list) {
        if (list.isEmpty()) {
            this.countPage = 1;
        } else if (list.size() == 0) {
            this.countPage = 1;
        } else {
            this.countPage = list.size() % this.getPageNote() == 0 ? list
                    .size()
                    / this.getPageNote() : list.size() / this.getPageNote() + 1;
        }
    }

    public int getHeadPage() {
        return HeadPage;
    }

    public void setHeadPage(int headPage) {
        HeadPage = headPage;
    }

    public int getNextPage() {
        if (this.nextPage < this.countPage) {
            this.nextPage++;
        }
        return this.nextPage;
    }

    public void setNextPage(int nextPage) {
        this.nextPage = nextPage;
    }

    public int getNowPage() {
        return nowPage;
    }

    public void setNowPage(int nowPage) {
        if (nowPage > this.countPage) {
            nowPage = 1;
        }
        this.nowPage = nowPage;
    }

    public int getPageNote() {
        return pageNote;
    }

    public void setPageNote(int pageNote) {
        this.pageNote = pageNote;
    }

    public int getPreviousPage() {
        if (this.previousPage > this.HeadPage) {
            this.previousPage--;
        }
        return previousPage;
    }

    public void setPreviousPage(int previousPage) {
        this.previousPage = previousPage;
    }

    public boolean isNext() {
        if (this.nextPage >= this.countPage || this.countPage == this.HeadPage) {
            this.next = false;
        } else {
            this.next = true;
        }
        return this.next;
    }

    public void setNext(boolean next) {
        this.next = next;
    }

    public boolean isPrevious() {
        if (this.nowPage <= this.HeadPage) {
            this.previous = false;
        } else {
            this.previous = true;
        }
        return this.previous;
    }

    public void setPrevious(boolean previous) {
        this.previous = previous;
    }
}

 

2、数据处理模型

 

public class PageDao {

    /**
     * @param args
     */
    //将集合分页
   
    public List distributePage(List list, int nowPage, int pageNote) {
        List pageList = null;
        PageVo vo = new PageVo();
        vo = this.encapsulationPage(list, nowPage, pageNote);
        pageList = list.subList(vo.getNowPage() * vo.getPageNote()
                - vo.getPageNote(), list.size());
        if (pageList.size() > vo.getPageNote()) {
            pageList = list.subList(vo.getNowPage() * vo.getPageNote()
                    - vo.getPageNote(), vo.getNowPage() * vo.getPageNote());
        }
        return pageList;
    }
   //封装页面属性
    public PageVo encapsulationPage(List list, int nowPage, int pageNote){
           PageVo page = new PageVo();
           page.setHeadPage(1);
           page.setPageNote(pageNote);
           page.setConutNote(list);
           page.setCountPage(list);
           page.setNowPage(nowPage);
           page.setNextPage(nowPage);
           page.setPreviousPage(nowPage);
            return page;
    }

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值