`
lan13217
  • 浏览: 498006 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

分页test

 
阅读更多
/**
 * 
 * @author lan
 *
 */
public class PagerViewTest {
	public static void main(String[] args) {
		int vn=5;//显示页数
		int tp=11;//总页数
		int pn=4;//当前页
		int startn=1;//显示开始页
		int endn=1;//显示结束页
		for(pn=1;pn<=11;pn++){
			if(tp<=vn){//总页数小于显示页数是显示全部
				System.out.print("help0");
				startn=1;
				endn=tp;
			}else{//总页数大于于显示页数
					if((pn-vn/2)<=0){//前部
						System.out.print("help2");
						startn=1;
						endn=startn+vn-1;
					}else if(tp<pn+vn/2+(vn%2)){//中部
						System.out.print("help3");
						startn=tp-vn+1;
						endn=tp;
					}else{//后部
						System.out.print("help4");
						startn=(pn-vn/2);
						endn=pn+vn/2-1+(vn%2);
					}
			}
			System.out.print("[首页1]"+"\t");
			for(int i=0;i<(endn-startn+1);i++){
				if(pn==startn+i){
					System.out.print("【"+(startn+i)+"】\t");
				}else{
					System.out.print((startn+i)+"\t");
				}
			}
			System.out.println("[末页"+tp+"]");
		}
	}
}



<%@ tag pageEncoding="UTF-8" %>
<%@ include file="/WEB-INF/jsp/common/global.jsp" %>

<%@ attribute name="id" required="true" type="java.lang.String" %>
<%@ attribute name="pager" required="true" type="org.xxx.Pager" %>
<c:set var="tp" value="${pager.totalPage}"/>
<c:set var="pn" value="${pager.pageNumber>pager.totalPage?pager.totalPage:pager.pageNumber}"/>
<c:set var="vn" value="8"/>
<c:set var="startn" value="1"/>
<c:set var="endn" value="1"/>
<c:choose>
	<c:when test="${tp<=vn}">
		<c:set var="startn" value="1"/>
		<c:set var="endn" value="${tp}"/>
	</c:when>
	<c:otherwise>
		<c:choose>
			<c:when test="${pn<=vn/2+(vn%2)}">
				<c:set var="startn" value="1"/>
				<c:set var="endn" value="${startn+vn-1}"/>
			</c:when>
			<c:when test="${tp<pn+vn/2+(vn%2)}">
				<c:set var="startn" value="${tp-vn+1}"/>
				<c:set var="endn" value="${tp}"/>
			</c:when>
			<c:otherwise>
				<c:set var="startn" value="${(pn-vn/2+(vn%2))}"/>
				<c:set var="endn" value="${startn+vn-1}"/>
			</c:otherwise>
		</c:choose>
	</c:otherwise>
</c:choose>
<h2>
<a href="${BASE}/articles/1">首页</a>
<c:if test="${pn>1}">
<a href="${BASE}/articles/${pn-1}">上一页</a>
</c:if>
<c:forEach var="i" begin="${startn}" end="${endn}">
	<c:choose>
		<c:when test="${pn==i}">
			<a href="${BASE}/articles/${i}">【${i}】</a>
		</c:when>
		<c:otherwise>
			<a href="${BASE}/articles/${i}">${i}</a>
		</c:otherwise>
	</c:choose>
</c:forEach>
<c:if test="${pn<tp}">
<a href="${BASE}/articles/${pn+1}">下一页</a>
</c:if>
<a href="${BASE}/articles/${tp}">末页</a>
</h4>
<hr/>
分享到:
评论

相关推荐

    各数据库分页语法支持

    ### 各数据库分页语法支持 #### 概述 在数据库操作中,分页查询是一项非常常见的需求。分页能够帮助我们有效地管理大量的数据记录,提高数据查询的效率和用户体验。不同的数据库系统提供了不同的分页机制,本文将...

    mybatis插件分页测试

    在实际的项目开发中,为了提高数据库查询效率,通常会采用分页查询的方式,避免一次性加载大量数据造成内存压力。本测试案例将详细介绍如何在MyBatis中使用插件实现分页功能。 首先,我们要理解MyBatis的插件机制。...

    自定义用户分页控件_分页程存过程

    本项目“自定义用户分页控件_分页程存过程”旨在创建一个自定义的分页控件,它利用C#语言和.NET框架实现,同时结合了存储过程来高效地处理分页数据。 首先,我们要理解什么是分页控件。分页控件是一种UI组件,用于...

    分页 jsp 分页类 java

    在Web开发中,分页是一种常见的用户界面设计技术,它用于处理大量的数据并提供良好的用户体验。当数据库中的数据量过大,一次性加载所有记录会导致页面加载速度慢,甚至可能导致内存溢出。因此,分页成为了一个必不...

    ssm分页,springmvc js 分页

    在MyBatis中,可以使用动态SQL来编写分页查询的Mapper,如`&lt;if test="page != null"&gt;LIMIT #{page.start}, #{page.pageSize}&lt;/if&gt;`,其中start是OFFSET,pageSize是LIMIT的值。 4. **SQL查询**:设计高效的分页SQL...

    数据分页程序完全解决方案(含普通分页/分段分页/原始分页/since_id分页)

    2) 支持分段式分页(page, page_ping, ping, ping_size), 传统分页(page, page_size), 原始分页(offset-count), since_id分页(prev_id, next_id) 3) 分段式分页, 传统分页, 原始分页在底层均转换为原始分页处理 5. ...

    PageTest(分页)

    在IT行业中,分页是一种常见的数据处理技术,特别是在Web应用中,用于展示大量数据时,以提高用户体验并优化性能。PageTest项目就是针对这一需求的一个示例,它演示了如何在J2EE环境下实现分页功能,从DAO层到...

    jq做的分页

    本教程将详细讲解如何使用jQuery制作高效的分页组件,通过提供的文件列表`pagination.css`、`test.html`、`jquery.js`、`pagination.js`和`members.js`,我们可以构建一个实用且美观的分页解决方案。 1. **jQuery...

    WinForm中的分页控件

    在Windows Forms(WinForm)应用开发中,分页控件是一种常见的用户界面元素,它用于在大量数据中实现浏览和导航。本项目提供了一个通用的WinForm分页控件的Demo,供开发者学习和参考。下面我们将深入探讨WinForm分页...

    使用JSP实现查询分页

    4. **分页查询**:使用`ResultSet rs = test.query("select * from student");`执行查询,并利用`absolute`方法定位到当前页的第一条记录。 5. **展示数据**:通过循环遍历`ResultSet`,将数据展示在`&lt;tr&gt;`和`&lt;td&gt;`...

    mybatis 分页自己写的一个分页

    &lt;when test="pageNum == 0"&gt; LIMIT #{pageSize} OFFSET #{pageNum * pageSize} ROWS FETCH NEXT #{pageSize} ROWS ONLY ``` 以上就是在MyBatis中实现自定义分页的基本步骤。通过对`mybatis分页代码`的...

    自定义页面分页标签自定义页面分页标签

    5. **TestPage**: 这个文件可能是用于测试自定义分页标签的代码或示例。可能包含HTML、CSS、JavaScript文件,以及可能的服务器端脚本。通过查看和运行这个项目,你可以更深入地理解自定义分页标签的实现细节。 总...

    一个很好的分页类php分页类

    在`test.php`中,可能是对分页类的测试代码,它会实例化分页类,传入必要的参数,然后展示或处理分页后的数据。测试代码通常包括以下步骤: 1. **连接数据库**:建立到数据库的连接,并执行查询操作以获取所有记录...

    jsp_jpager 前台分页l例子_test

    在Java Web开发中,JSP(JavaServer Pages)是一种用于创建动态网页的技术,而`jsp_jpager`则是针对JSP实现的一种前台分页解决方案。`jsp_jpager`库提供了便捷的方式来展示大量数据,使得用户可以方便地浏览和操作...

    mybatis逻辑分页,含分页导航

    &lt;if test="username != null"&gt; AND username LIKE #{username} ORDER BY id DESC LIMIT #{offset}, #{limit} ``` 在这个例子中,`#{offset}`和`#{limit}`是分页参数,分别代表当前页的起始位置和每页的数据...

    分页的实现原理_分页的实现步骤

    **分页实现原理** 在网页应用中,分页是一种常见的数据展示方式,它允许用户以较小的数据块(页面)浏览大量的信息,提高了用户体验并减轻了服务器的负担。以下是分页的实现原理: 1. **获取总记录数**:首先,...

    常用数据库sql分页

    数据库SQL分页技术 数据库分页是指从大规模的数据集中提取指定的记录数,以减少数据传输量,提高应用程序的性能和用户体验。常见的数据库管理系统包括MySQL、SQL Server、Oracle、DB2等,每种数据库管理系统都有其...

    DataSet高效分页

    ### DataSet高效分页技术解析 在数据库操作领域中,分页是提高用户体验和系统性能的重要手段之一。传统的分页方式通常依赖于存储过程或者直接使用SQL查询语句,但随着.NET框架的发展,ADO.NET提供了另一种高效的...

    java web项目分页通用实现

    - `test.jsp`: 前端页面,展示分页数据和分页导航。 通过以上组件,开发者可以在项目中快速集成分页功能,无需每次都重复编写相同的代码,提高了开发效率。 总结,Java Web项目中的分页通用实现涉及到数据库查询、...

    php按字数分页类

    `test_text.php`和`test_array.php`是两个测试文件,分别针对纯文本内容和数组数据的分页。对于文本分页,类可能需要处理字符串的分割;而对于数组,可能涉及数组切片操作。 `test_mysql.php`则是数据库分页的测试...

Global site tag (gtag.js) - Google Analytics