`
blaiu
  • 浏览: 130618 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

分页 代码

    博客分类:
  • Java
 
阅读更多
public class PageBean {

	private String url;				//--路径
	
	private int pageNo;				//--当前页号
	
	private int totalRecords;		//--查询总记录数

	private int pageSize = 10;		//--页面显示记录数

	private int totalPages;			//--总页数
	
	private int startRecord;		//--起始记录数
	
	private int endRecord;			//--末记录
	
	private int firstPage = 1;		//--首页
	
	private int lastPage;			//--末页
	
	private int nextPage;			//--下一页
	
	private int prevPage;			//--上一页
	
	private int navStartNo;			//--当前显示的起始页
	
	private int navEndNo;			//--当前显示的最后一页

	private int navSize = 10;		//--页面显示的页数
	
	/**
	 * 
	 * @param pageNo 		当前页号
	 * @param totalRecords	总记录数
	 * @param url			路径
	 * @param pageSize		页面显示记录数(当输入pageSize=0 默认为10 )
	 * @param navSize		页面显示页数 (当输入navSize=0 默认为10 )
	 */
	public PageBean(int pageNo, int totalRecords, String url, int pageSize, int navSize) 
	{
		this.pageNo = pageNo;
		this.totalRecords = totalRecords;
		this.url = url;
		if(pageSize != 0) {
			this.pageSize = pageSize;
		}
		if(navSize != 0) {
			this.navSize = navSize;
		}
		
		this.totalPages = this.totalRecords / this.pageSize;
		if (this.totalRecords % this.pageSize > 0) {
			this.totalPages = this.totalPages + 1;
		}
		
		this.startRecord = (this.pageNo - 1) * this.pageSize;
		this.endRecord = Math.min(this.startRecord + this.pageSize, this.totalRecords);
		this.lastPage = this.totalPages;
		this.nextPage = Math.min(this.pageNo +1, this.lastPage);
		this.prevPage = Math.max(1, this.pageNo - 1);
		
		this.navStartNo = Math.max(1, this.pageNo - this.navSize / 2);
		this.navEndNo = Math.min(this.navStartNo + this.navSize, this.lastPage);
	}
	
	
	public String toString () {
		StringBuffer sb = new StringBuffer();
		
//		if (this.pageNo != this.lastPage && this.totalPages > 10) {
//			sb.append("<a href=\""+this.url+"&pageNo="+this.firstPage+"\">首页</a>");
//			sb.append("  ");
//			sb.append("<a href=\""+this.url+"&pageNo="+this.prevPage+"\">上一页</a>");
//			sb.append("  ");
//		}
		
		if (this.pageNo != 1 && this.totalPages > 10) {
			sb.append("<a href=\""+this.url+"&pageNo="+this.firstPage+"\"> 1 ... </a>");
			sb.append("  ");
		}
		
		for (int i = navStartNo; i <= navEndNo; i++) {
			if (pageNo != i) {
				sb.append("[<a href=\""+this.url+"&pageNo=" +i+ "\">" + i + "</a>]");
				sb.append("  ");

			} else {
				sb.append("[" + i + "]");
				sb.append("  ");
			}
		}
		
//		if (this.pageNo != this.lastPage && this.totalPages > 0) {
//			sb.append("<a href=\""+this.url+"&pageNo="+this.nextPage+"\">下一页</a>");
//			sb.append("  ");
//			sb.append("<a href=\""+this.url+"&pageNo="+this.lastPage+"\">末页</a>");
//			sb.append("  ");
//		}
		
		if (this.pageNo != this.totalPages && this.totalPages > 10) {
			sb.append("<a href=\""+this.url+"&pageNo="+this.lastPage+"\"> ... "+this.lastPage+" </a>");
			sb.append("  ");
		}
		
		String js = "<script language=\"javascript\">function page() {var pageNo = document.getElementById(\"pageNo\").value; if (pageNo<"+this.firstPage+" || pageNo>"+this.totalPages+") {alert(\"你输入的内容超出范围,请重新输入。\"); return false;} else if (!(/^\\d+$/.test(pageNo))) {alert(\"请输入有效的数字\"); return false;} return true;}</script>";
		sb.append("<form action=\""+this.url+"\" method=\"post\" name=\"pageForm\" onsubmit=\"return page()\"><input type=\"text\" name=\"pageNo\" id=\"pageNo\" size=\"4\" value=\""+this.pageNo+"\"/><input type=\"submit\" value=\"跳页\"/></form>");
		System.out.println(sb.toString());
		sb.append(js);
		return sb.toString();
	}


	public String getUrl() {
		return url;
	}


	public void setUrl(String url) {
		this.url = url;
	}


	public int getPageNo() {
		return pageNo;
	}


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


	public int getTotalRecords() {
		return totalRecords;
	}


	public void setTotalRecords(int totalRecords) {
		this.totalRecords = totalRecords;
	}


	public int getPageSize() {
		return pageSize;
	}


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


	public int getTotalPages() {
		return totalPages;
	}


	public void setTotalPages(int totalPages) {
		this.totalPages = totalPages;
	}


	public int getStartRecord() {
		return startRecord;
	}


	public void setStartRecord(int startRecord) {
		this.startRecord = startRecord;
	}


	public int getEndRecord() {
		return endRecord;
	}


	public void setEndRecord(int endRecord) {
		this.endRecord = endRecord;
	}


	public int getFirstPage() {
		return firstPage;
	}


	public void setFirstPage(int firstPage) {
		this.firstPage = firstPage;
	}


	public int getLastPage() {
		return lastPage;
	}


	public void setLastPage(int lastPage) {
		this.lastPage = lastPage;
	}


	public int getNextPage() {
		return nextPage;
	}


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


	public int getPrevPage() {
		return prevPage;
	}


	public void setPrevPage(int prevPage) {
		this.prevPage = prevPage;
	}


	public int getNavStartNo() {
		return navStartNo;
	}


	public void setNavStartNo(int navStartNo) {
		this.navStartNo = navStartNo;
	}


	public int getNavEndNo() {
		return navEndNo;
	}


	public void setNavEndNo(int navEndNo) {
		this.navEndNo = navEndNo;
	}


	public int getNavSize() {
		return navSize;
	}


	public void setNavSize(int navSize) {
		this.navSize = navSize;
	}
	
	
}
分享到:
评论

相关推荐

    分页代码 分页代码 分页代码

    分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码分页代码...

    PHP的分页源代码 分页代码

    接下来我们对给定的PHP分页代码进行详细分析: 1. **引入数据库连接文件**: ```php include("conn.php");//数据库连接 ``` 2. **定义每页显示的记录数**: ```php $page_size=10;//每页显示的记录数 ``` 3...

    JS+HTML分页代码

    本示例提供的"JS+HTML分页代码"是一个利用JavaScript(JS)和超文本标记语言(HTML)实现的分页功能,主要包含了首页、前页、后页、尾页以及自定义分页页号的功能。 **HTML基础**: HTML是网页的基础,用于构建页面...

    PHP内容分页.新闻内容分页代码,分页代码

    PHP内容分页,新闻内容分页代码,分页代码

    分页代码(完整)

    以上就是ASP.NET中实现分页代码的完整过程。通过这种方式,你可以有效地管理大量数据,提供流畅的用户体验,同时优化服务器资源的使用。在实际项目中,可能还需要考虑更多细节,如错误处理、国际化支持以及用户体验...

    纯JS长文章分页代码

    ### 纯JS长文章分页代码解析 在网页开发中,为了提高用户体验及加载速度,经常需要将过长的文章内容进行分页处理。本文基于提供的文件内容,深入解析一个用纯JavaScript实现的文章分页代码。 #### 核心概念与功能 ...

    非常实用ASP通用分页代码

    ASP通用分页代码是网页开发中的一个重要组成部分,特别是在处理大量数据需要分页显示的场景下。这个代码模块的目的是为了提高开发效率,实现代码的复用,并确保用户在浏览多页内容时能轻松导航。以下将详细介绍这个...

    经典的10种JS分页代码

    这篇内容将详细介绍10种经典的JS分页代码实现方法,帮助开发者理解和应用这些技术。 1. **基础HTML和CSS分页**:最简单的分页实现,通常结合HTML链接和CSS样式来创建分页条目。开发者需要计算总页数,然后创建相应...

    asp论坛分页数字分页代码

    这个"asp论坛分页数字分页代码"是一个实用的小工具,可以帮助开发者快速实现论坛内容的分页显示。 首先,我们来理解一下分页的基本概念。分页是将大量数据分割成若干小块,每次只显示一部分,用户可以通过点击页码...

    非常优秀的Java分页代码

    本资源提供了一套非常优秀的Java分页代码,它旨在简化开发过程,使得开发者能够轻松地在应用程序中实现分页功能。 分页的基本原理是将大量的数据集分割成较小的部分,每次只加载一部分数据到内存中,用户可以逐页...

    ASP.NET分页代码

    在这个“ASP.NET分页代码”的主题中,我们将深入探讨如何在ASP.NET中实现分页功能。 1. 分页的基本原理 分页主要是通过限制在页面上显示的数据量来实现的。当用户请求一个页面时,服务器只返回当前页所需的数据,而...

    java万能分页代码

    Java万能分页代码是Java开发中常用的工具,尤其在处理大数据量的Web应用时,分页技术能够显著提升用户体验并优化服务器性能。这个3.0版本的分页代码库通常包含了一些经过优化的分页算法和接口,适用于各种场景,如...

    asp.net AJAX分页 分页代码

    本教程将深入探讨ASP.NET AJAX分页的相关知识点,以及如何编写分页代码。 1. **什么是ASP.NET AJAX分页?** ASP.NET AJAX分页是一种通过使用ASP.NET AJAX库(以前称为Atlas)实现的客户端分页方法。它利用...

    ASP分页代码(非常实用)

    本文将深入探讨ASP分页代码的实现原理和应用。 首先,理解分页的基本概念。分页是将一个长列表的数据分成多个较小的部分,每个部分称为一页,用户可以逐页浏览。在ASP中,我们通常会用到数据库查询来获取数据,然后...

    css,html漂亮的分页代码

    本主题将深入探讨如何使用HTML和CSS来实现美观且实用的分页代码。 首先,HTML(HyperText Markup Language)是网页内容的基础结构语言,它定义了页面的元素和布局。在创建分页时,我们通常会使用`&lt;ul&gt;`和`&lt;li&gt;`标签...

    24款超实用的WEB分页代码

    本文将深入探讨24款超实用的WEB分页代码,这些代码可以帮助开发者快速实现高效、美观的分页功能。 1. 分页的基本原理:分页主要是通过JavaScript、CSS和HTML三者结合来实现的。JavaScript处理数据逻辑,CSS负责样式...

    asp数字分页代码

    ### ASP数字分页代码解析与应用 #### 一、引言 在Web开发中,当数据量较大时,为了提高用户体验并减轻服务器负担,通常会采用分页技术来展示数据。ASP(Active Server Pages)是一种早期的服务器端脚本环境,可以...

    jsp页面分页代码

    在JSP中,分页代码通常结合Servlet和JSP页面共同完成。Servlet处理请求,计算总页数,以及根据请求的页码获取对应的数据,然后将这些信息传递给JSP页面进行渲染。 1. **Servlet部分**: - 计算总页数:根据数据库...

    最好用的分页代码(java版)

    本文将深入解析标题为"最好用的分页代码(java版)"的实现,探讨如何在Java环境中实现高效且灵活的分页。 该分页代码由类`CutPage`实现,它实现了`Serializable`接口,这意味着该类的对象可以被序列化,便于在网络...

    mop猫扑网分页代码.rar

    【标题】"mop猫扑网分页代码.rar"指的是一个与猫扑网分页功能相关的JavaScript代码资源,它被压缩在RAR格式的文件中。猫扑网是中国知名的网络社区,其网页设计和功能实现经常成为开发者学习和借鉴的对象。这里的...

Global site tag (gtag.js) - Google Analytics