分页
来源:互联网 发布:java毕业论文开题报告 编辑:程序博客网 时间:2024/06/09 23:59
- package org.grey.utils;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.List;
- @SuppressWarnings({"unchecked","unused"})
- public class Page {
- private int pageNo=1; //当前页
- private int pageSize = 10; //每页大小
- private int totalPages; //总页
- private int totalRows; //总行数
- private List list = new ArrayList(0); //存放数据
- //翻页条 示例 1 2 3 4 5
- private int barNumbers = 5; //几个为一条,默认为5
- private List listNumbers = new ArrayList(); //数字翻页条
- public Page(int pageNo, int pageSize, int totalPages, List list) {
- this.pageNo = pageNo;
- this.pageSize = pageSize;
- this.totalPages = totalPages;
- this.list = list;
- }
- public int getPageNo() {
- return pageNo>this.getTotalPages() ? this.getTotalPages() : (pageNo ==0 ? 1 : pageNo);
- }
- public void setPageNo(int pageNo) {
- this.pageNo = pageNo;
- }
- public int getPageSize() {
- return pageSize;
- }
- public void setPageSize(int pageSize) {
- this.pageSize = pageSize;
- }
- public int getTotalPages() {
- totalPages = this.getTotalRows()%this.getPageSize()==0 ? this.getTotalRows()/this.getPageSize() : (this.getTotalRows()/this.getPageSize())+1;
- return totalPages;
- }
- public void setTotalPages(int totalPages) {
- this.totalPages = totalPages;
- }
- public int getTotalRows() {
- return totalRows;
- }
- public void setTotalRows(int totalRows) {
- this.totalRows = totalRows;
- }
- public List getList() {
- return list;
- }
- public void setList(List list) {
- this.list = list;
- }
- public int getBarNumbers() {
- return barNumbers;
- }
- public void setBarNumbers(int barNumbers) {
- this.barNumbers = barNumbers;
- }
- //分页条 如:1 2 3 4 5 6
- public List getListNumbers() {
- List listn = new ArrayList();
- //总显示条数
- int totbars = this.getTotalPages()%this.getBarNumbers()==0 ? this.getTotalPages()/this.getBarNumbers() : this.getTotalPages()/this.getBarNumbers()+1;
- //当前显示条数
- int currentBar = this.getPageNo()%this.getBarNumbers()==0 ? this.getPageNo() /this.getBarNumbers() : this.getPageNo() /this.getBarNumbers()+1;
- if(this.getPageNo()==this.getBarNumbers()*currentBar && currentBar != totbars) {
- currentBar++;
- }
- if(this.getPageNo()==(this.getBarNumbers()*currentBar-this.getBarNumbers()+1) && currentBar >1) {
- currentBar--;
- }
- for(int i=this.getBarNumbers()*currentBar; i>(currentBar==1 ? 0 : this.getBarNumbers()*(currentBar-1)); i--) {
- if(i<=this.getTotalPages()) {
- listn.add(i);
- }
- }
- Collections.sort(listn);
- return listn;
- }
- // public static void main(String[] args) {
- // Page p = new Page();
- // p.setTotalRows(120);
- // //p.setBarNumbers(6);
- // p.setPageNo(13);
- // System.out.println(p.getTotalPages());
- // System.out.println(p.getListNumbers());
- // }
- }
0 0