⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 paginate.java

📁 java分页bean
💻 JAVA
字号:
import java.util.ArrayList;
import java.util.Iterator;

/**
 * 
 * @author dailin
 * 
 */
public class Paginate {
	int currentPage = 1; // 当前页

	int totalPages = 0; // 总页数

	int pageRecorders = 5;// 每页5条数据

	int totalRows = 0; // 总数据数

	int pageStartRow = 0;// 每页的起始数

	int pageEndRow = 0; // 每页显示数据的终止数

	boolean hasNextPage = false; // 是否有下一页

	boolean hasPreviousPage = false; // 是否有前一页

	Iterator it;

	/**
	 * 
	 * @param alllist全部数据
	 * @param nowPage正在看的页数
	 * @param action用户请求(上一页,下一页)
	 * @return
	 */
	public ArrayList getList(ArrayList alllist, int nowPage, String action) {
		ArrayList list = new ArrayList();
		// 总记录数
		totalRows = alllist.size();
		hasPreviousPage = false;
		// 总页数
		if ((totalRows % pageRecorders) == 0) {
			totalPages = totalRows / pageRecorders;
		} else {
			totalPages = totalRows / pageRecorders + 1;
		}
		// 当前要看页数
		if (action == null || action.equals("null")) { // 第一次读取数据
			currentPage = 1;
		} else {
			if (action == "nextPage" || action.equals("nextPage")) // 点击下一页
			{
				currentPage = nowPage + 1;
			}
			if (action == "previousPage" || action.equals("previousPage")) // 点击上一页
			{
				currentPage = nowPage - 1;
			}
		}
		// 判断有没有上一页
		if ((currentPage - 1) > 0) {
			hasPreviousPage = true;
		} else {
			hasPreviousPage = false;
		}
		// 判断有没有下一页
		if (currentPage >= totalPages) {

			hasNextPage = false;
		} else {

			hasNextPage = true;
		}
		// 显示页从第几条到第几条
		if (currentPage == 1) {
			if (totalRows < pageRecorders) {
				pageStartRow = 0;
				pageEndRow = totalRows;
			} else {
				pageStartRow = 0;
				pageEndRow = pageRecorders;
			}
		}else{
			if (currentPage * pageRecorders < totalRows) {// 判断是否为最后一页
				pageEndRow = currentPage * pageRecorders;
				pageStartRow = pageEndRow - pageRecorders;
			} else {
				pageEndRow = totalRows;
				pageStartRow = pageRecorders * (totalPages - 1);
			}
		}
		list = new ArrayList(alllist.subList(pageStartRow, pageEndRow));
		// list=(ArrayList) alllist.subList(pageStartRow, pageEndRow);
		/*
		 * for (int i = pageStartRow; i < pageEndRow; i++) {
		 * 
		 * list.add(alllist.get(i));
		 *  }
		 */
		return list;

	}

	/**
	 * 
	 * @return
	 */
	public int getCurrentPage() {
		return currentPage;
	}

	/**
	 * 
	 * @return
	 */
	public int getTotalRows() {
		return totalRows;
	}

	/**
	 * 
	 * @return
	 */
	public int getTotalPages() {

		return totalPages;
	}

	public boolean isHasNextPage() {
		return hasNextPage;
	}

	public boolean isHasPreviousPage() {
		return hasPreviousPage;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -