`

java里jsp分页

    博客分类:
  • java
阅读更多

一种分页方法:

package com.huawei.api.site.util;

//接口类
public interface PageBase {
	
	public void setPageSize(int pageSize);		//设置分页大小
	public int getPageSize();		//返回分页大小
	
	public int  getPageCount();		//返回总页数
	
	public int getPageRowsCount();		//返回当前页的记录条数
	public void setPageRowsCount();		//获得每页的条数
	
	public 	void setRowsCount(); //设置总记录行数
	public int getRowsCount();		//返回总记录行数
	
	public int getCurPage();	//返回当前页号
	public void setCurPage(int curPage_);//设置当前页号
	
	public void setCurPageListData();//设置当前页面显示的记录集合对象
	// public void gotoPage(int page);		//转到指定页
	// public void pageFirst() throws SQLException;	//转到当前页的第一条记条并说明异常
	// public void pageLast() throws SQLException;	//转到当前页的最后一条记条并说明异常
	

}
 
package com.huawei.api.site.util;


import java.util.ArrayList;
import java.util.List;
//实现接口的类
public class Pagetion implements PageBase {

	private int rowsCount; // 总记录条数

	private int pageSize; // 分页的大小,即每页的最大条数

	private int curPage; // 当前页

	private int pageRowsCount;

	private List curPageList;

	private List totalList;  	

	public void setRowsCount() {
		
		if(this.totalList!=null) {
			int itempRowCount = totalList.size();
			this.rowsCount = itempRowCount;
		} else {
			this.rowsCount=0;
		}
		
	}

	public int getCurPage() { // 获得当前页
		return curPage;
	}

	public void setCurPage(int curPage_) {
		this.curPage = curPage_;
	}

	public int getPageCount() { // 获得总页数

		if (rowsCount == 0) {
			return 0;
		}
		if (pageSize == 0) {
			return 1;
		}
		if (rowsCount % pageSize == 0) {
			return rowsCount / pageSize;
		} else {
			return rowsCount / pageSize + 1;
		}
	}

	public int getRowsCount() { // 获得总记录条数
		return rowsCount;
	}

	public void setPageRowsCount() { // 获得每页的条数

		if (pageSize == 0) {
			this.pageRowsCount = rowsCount;
		} else if (getRowsCount() == 0) {
			this.pageRowsCount = 0;
		} else if (curPage != getPageCount()) {
			this.pageRowsCount = pageSize;
		} else {
			this.pageRowsCount = rowsCount - (getPageCount() - 1) * pageSize;
		}	
	}

	public int getPageRowsCount() { // 获得每页的条数
		return this.pageRowsCount;
	}

	public int getPageSize() { // 获得分页的大小
		return pageSize;
	}
	
	public void setTotalList(List list) {
		this.totalList=list;
	}
	public List getTotalList(){
		
		return this.totalList;
	}
	
	public void gotoPage(int page) {	//到达第X页
		if(totalList==null){ 
			return;
		}	
		if(curPage<1)	{
			curPage=1;
		}
		if(curPage>getPageCount()) {
			curPage=getPageCount();
		} else {
			curPage=page;
		}
		//int row=(page-1)*pageSize+1;
	}
	/*
	 * public void gotoPage(int page) { //到达第X页 if(rs==null) return; if(page<1) {
	 * page=1; } if(page>getPageCount()) { page=getPageCount(); } int
	 * row=(page-1)*pageSize+1; try{ rs.absolute(row); curPage=page;
	 * }catch(SQLException e) { } }
	 * 
	 * public void pageFirst() throws SQLException { int
	 * row=(curPage-1)*pageSize+1; rs.absolute(row); }
	 * 
	 * public void pageLast() throws SQLException { int
	 * row=(curPage-1)*pageSize+getPageRowsCount(); rs.absolute(row); }
	 */

	public void setPageSize(int pageSize) { // 设置分页大小
		if (pageSize >= 0) {
			this.pageSize = pageSize;
			//curPage = 1;
		}
	}

	
	public List getCurPageList() {
		return curPageList;
	}
	
	public void setCurPageListData() {
		
		if(this.rowsCount>0) {
			List curPageList = new ArrayList();
			if ((this.rowsCount > (this.curPage-1) * this.pageSize) && (this.curPage>=1)) {
	
				for (int i=(this.curPage-1)* this.pageSize; i < this.curPage * this.pageSize; i++) {
					if (i < this.rowsCount) {
						curPageList.add(this.totalList.get(i));
					}
				}
			}
			this.curPageList=curPageList;
		}else if(this.totalList==null) {
			this.curPageList=null;
		} else if(this.totalList!=null) {
			if(this.totalList.size()==0){	
				this.curPageList=totalList;
			}		
		} 
	}
}
 
//使用方法
//一、在action中
//创建分页对象	
Pagetion Pagetion=new Pagetion();
//设置当前页
Pagetion.setCurPage(ipage);
//set所有记录
Pagetion.setTotalList(vc);
			
//set每个页面大小				
Pagetion.setPageSize(3);

Pagetion.setRowsCount();
Pagetion.setPageRowsCount();
Pagetion.setCurPageListData();

request.setAttribute("Pagetion", Pagetion);

//二、在jsp中

Pagetion page=(Pagetion)request.getAttribute("Pagetion");
//通过Pagetion的getCurPageList()返回一个List,得到结果当前页的List

<div align="center"> 
<span class="STYLE5"><a>第<s:property value="curPage" />页&nbsp;&nbsp;
共<s:property value="pageCount" />页&nbsp;&nbsp;
</a></span>

<span class="STYLE5"><a href='<s:url action="ShowApiByProtocol.action"><s:param 
name="protocol" value="protocol" ></s:param>
<s:param name="curPage">1</s:param></s:url>'> 首页</a></span>&nbsp;&nbsp;
<s:if test="curPage>1">
<span class="STYLE5"><a href='<s:url action="ShowApiByProtocol.action"><s:param 
name="protocol" value="protocol" ></s:param>
<s:param name="curPage" value="%{curPage-1}"></s:param></s:url>'> 上一页</a></span>&nbsp;&nbsp;
</s:if>
<s:if test="pageCount>curPage">
<span class="STYLE5"><a href='<s:url action="ShowApiByProtocol.action"><s:param 
name="protocol" value="protocol" ></s:param>
<s:param name="curPage" value="%{curPage+1}"></s:param></s:url>'> 下一页</a></span>&nbsp;&nbsp;
</s:if>
<span class="STYLE5"><a href='<s:url action="ShowApiByProtocol.action"><s:param 
name="protocol" value="protocol" ></s:param>
<s:param name="curPage" value="pageCount"></s:param></s:url>'> 尾页</a></span>&nbsp;&nbsp;

</div>
 

 

分享到:
评论

相关推荐

    java实现分页 jsp分页 分页

    java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页java实现分页 jsp分页 分页

    JAVA和JSP分页显示实例

    在Java和JSP开发中,分页显示是常见的功能需求,尤其在处理大量数据时,为了提高用户体验,避免一次性加载所有数据导致页面响应慢或内存压力过大。本实例将介绍如何利用Java和JSP实现一个简单的分页显示功能。 首先...

    Java _ JSP分页Demo

    本示例"Java _ JSP分页Demo"显然关注的是如何在这样的环境中实现数据的分页显示。分页是大数据量展示时常用的一种优化手段,它可以提高用户体验,避免一次性加载过多数据导致页面响应变慢或内存资源过度消耗。 首先...

    Java Ajax分页,jsp ajax分页

    总结来说,实现Java AJAX分页和JSP分页涉及前后端的协作。前端通过AJAX与后端通信,后端处理请求并从数据库获取数据,然后将数据返回给前端,前端再更新页面内容。这个过程提升了用户体验,使得浏览大数据集变得更加...

    JAVA JSP 简单分页插件

    分页插件分页插件分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP 简单分页插件JAVA JSP...

    JAVA的JSP简单分页

    在这个场景中,"JAVA的JSP简单分页"是一个用于实现基本分页功能的类,虽然可能较为基础,但对于初学者来说,理解其工作原理对于掌握Web开发中的分页技术具有一定的帮助。 首先,我们来看`Page.java`这个文件。在JSP...

    分页 jsp 分页类 java

    在这个场景中,我们将讨论如何在Java环境下,结合jsp(JavaServer Pages)来实现分页功能。 分页主要涉及到两个关键组件:前端展示和后端处理。在jsp中,前端通常负责展示分页链接或按钮,而后端则处理请求,根据...

    jsp 分页 java jsp 分页 servlet

    在这个主题中,我们将深入探讨"jsp分页"、"java"以及"servlet"如何协同工作来实现高效的分页功能。 首先,我们来看"jsp分页"。JSP(JavaServer Pages)是一种基于Java的技术,用于动态生成web内容。在分页场景中,...

    JSP通用分页显示1.2.rar_java 分页显示_jsp_jsp 分页_jsp 分页_jsp分页

    **JSP分页显示技术详解** 在Web开发中,数据量较大的时候,通常需要采用分页的方式来展示数据,以提高用户体验并减轻服务器负担。JSP(JavaServer Pages)作为Java平台上的动态网页技术,提供了丰富的功能来实现这...

    java里多中分页(java、jsp、SSH等)实例

    JSP分页通常涉及传递当前页数、总页数和每页大小等参数,然后在页面上显示相应的链接或按钮。页面跳转时,这些参数通过请求参数传递给服务器。 3. **Struts1分页** Struts1框架提供了ActionForm和ResultMap来处理...

    MySQL+java类+JSP 分页

    在这个场景中,我们关注的是如何使用MySQL数据库、Java类以及JSP(JavaServer Pages)技术来实现网页的分页功能。分页是大型数据集展示中不可或缺的一个特性,它能够帮助用户更有效地浏览和管理大量信息。下面将详细...

    java oracle数据库过程实现jsp分页

    以下是一个简单的JSP分页显示示例: ```jsp &lt;%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %&gt; &lt;%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %&gt; ${result.rows}"&gt; &lt;!--...

    JSP分页技术,非常好的的学习Jsp分页技术的教程,适合初学者

    ### JSP分页技术详解:初学者的完美指南 #### 引言 在现代Web开发中,数据展示的效率和用户体验至关重要。对于大型数据库或数据集的处理,一次性加载所有数据不仅消耗大量资源,还可能导致页面加载缓慢,严重影响...

    Java+jsp后台分页 oracle数据库

    这是我自己改的分页代码 呵呵 写了将近一个星期 只有一个控制类和一个jsp页 方便阅读和修改 只要修改test.java里面的数据库连接和表名就可以用了 希望大家工作和学习顺利 里面的class12.jar这个包是因为我的数据库...

    jsp java自定义标签 分页 当前位置 循环遍历数据

    在IT行业中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而Java自定义标签则是JSP中增强可重用性和模块化的一种方法。本文将深入探讨如何使用Java自定义标签来实现分页功能,当前位置的显示以及数据的...

    java jsp mysql分页(原代码)

    Java JSP MySQL分页是Web开发中常见的需求,主要用于处理大量数据时提高用户体验,避免一次性加载过多数据导致页面响应慢。在这个项目中,我们看到它使用了Java、JSP、JDBC以及MySQL来实现这一功能。下面将详细介绍...

    java jsp 分页类 java jsp 页面

    二、JSP分页类设计 在Java JSP中,我们通常会创建一个专门的分页类,用于封装分页逻辑。这个类可能包含以下属性和方法: 1. 属性: - 总记录数(totalRecords):数据库中所有记录的数量。 - 每页记录数...

    java、jsp分页源码

    在Java和JSP开发中,分页是一种常见的需求,它能有效地管理大量数据,提高网页加载速度,并提供更好的用户体验。本资源提供了基于Java、JSP和MySQL的分页源码,便于开发者理解和实现分页功能。 分页的核心原理是...

    sql分页、jsp分页

    jsp分页、PLSQL中用Group by和Having来实现分组统计、SQL_server_海量数据库查询优化及分页算法、SQL_SERVER数据库中实现快速的数据提取和数据分页、SQLServer 2005下的分页SQL、sql分页查询、sql数据库模糊查询分页...

Global site tag (gtag.js) - Google Analytics