package com.a.a;
public class PageBean {
private int nowpage;//当前页码
private int yemashuliang;//页码数量
private int pagesize;//每页显示数量
private int shouye;//首页
private int weiye;//尾页页码
private int shangyiye;//上一页页码
private int xiayiye;//下一页页码
private int kaishiye;// 显示页码的开始页
private int jieshuye;//显示页码的结束页
private int count;//查询出的数据量
public PageBean(int count,int pagesize,int nowpage) {
this.count=count;
this.nowpage = nowpage;//当前页
this.pagesize=pagesize;
yemashuliang = 1;//页码数
yemashuliang = count / pagesize + 1;
if (count % pagesize == 0) {
yemashuliang = count / pagesize;
}
shouye = 1;// 首页
weiye = yemashuliang;// 尾页
shangyiye = nowpage - 1;// 上一页
if (shangyiye >= 1) {
shangyiye = 1;
}
xiayiye = nowpage + 1;// 下一页
if (xiayiye >= yemashuliang) {
xiayiye = yemashuliang;
}
if (nowpage>=weiye) {
this.nowpage=weiye;
}
kaishiye=1;
kaishiye=nowpage-4;
jieshuye=nowpage+5;
if (nowpage%2==1 ) {
jieshuye=nowpage+5;
}
if (jieshuye>=yemashuliang) {
jieshuye=yemashuliang;
kaishiye=jieshuye-9;
}
if (jieshuye<10&&yemashuliang>=10) {
jieshuye=10;
}
if (kaishiye<=0) {
kaishiye=1;
}
if (kaishiye==1 && yemashuliang<10 && jieshuye!=yemashuliang ) {
jieshuye=yemashuliang;
}
}
public PageBean(){}
public int getNowpage() {
return nowpage;
}
public void setNowpage(int nowpage) {
this.nowpage = nowpage;
}
public int getYemashuliang() {
return yemashuliang;
}
public void setYemashuliang(int yemashuliang) {
this.yemashuliang = yemashuliang;
}
public int getMeiyexianshi() {
return pagesize;
}
public void setMeiyexianshi(int pagesize) {
this.pagesize = pagesize;
}
public int getShouye() {
return shouye;
}
public void setShouye(int shouye) {
this.shouye = shouye;
}
public int getWeiye() {
return weiye;
}
public void setWeiye(int weiye) {
this.weiye = weiye;
}
public int getShangyiye() {
return shangyiye;
}
public void setShangyiye(int shangyiye) {
this.shangyiye = shangyiye;
}
public int getXiayiye() {
return xiayiye;
}
public void setXiayiye(int xiayiye) {
this.xiayiye = xiayiye;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public int getPagesize() {
return pagesize;
}
public void setPagesize(int pagesize) {
this.pagesize = pagesize;
}
public int getKaishiye() {
return kaishiye;
}
public void setKaishiye(int kaishiye) {
this.kaishiye = kaishiye;
}
public int getJieshuye() {
return jieshuye;
}
public void setJieshuye(int jieshuye) {
this.jieshuye = jieshuye;
}
}
//在Action中的使用
public String executeImg() {
if (nowpage==null) {
nowpage=1;
}
/*分页信息*/
int count=0;
/*分页信息 判断每页数量cookie*/
//数据总数
count=newsInfoDAO.getNewsinfoCountNewstype(t);
if (count!=0) {
p=new PageBean(count,pagesize,nowpage);
//获取分类下的文档列表
newsInfos=newsInfoDAO.getNewsinfoPageNewstype(t,p.getPagesize() ,p.getNowpage());
}
if (t!=null) {
newsTypecn=newsTypecnDAO.findByNewstypeid(language, t);
}
return SUCCESS;
}
//JSP+struts2在页面中的使用
<!-- page -->
<s:if test="p!=null">
<div class="pagination">
<s:if test="p.nowpage!=p.shouye">
<a id="previous-page" href="/<s:property value="#locale" />/news/llist/<s:property value="t" />/<s:property value="p.nowpage-1" />.html" ><s:text name="news_list_shangyiye" /></a>
</s:if>
<s:iterator id="page" begin="p.kaishiye" end="p.jieshuye" >
<s:if test="#page==p.nowpage">
<span class="current"><s:property value="#page" /></span>
</s:if>
<s:else >
<a href="/<s:property value="#locale" />/news/llist/<s:property value="t" />/<s:property value="#page" />.html" ><s:property value="#page" /></a>
</s:else>
</s:iterator>
<s:if test="p.nowpage!=p.weiye">
<a id="next-page" href="/<s:property value="#locale" />/news/llist/<s:property value="t" />/<s:property value="p.nowpage+1" />.html" /><s:text name="news_list_xiayiye" /></a>
</s:if>
</div>
</s:if><!-- page -->
分享到:
相关推荐
这个"Page"分页类的实现可能包括以下几个核心组件: 1. **初始化**:类的构造函数接收必要的参数,如总记录数、每页显示的条目数、当前页数等,用于计算总的页数和其他相关属性。 2. **计算总页数**:根据总记录数...
2. **实例化分页类**:将查询结果总数和每页记录数传递给分页类。 3. **设置当前页**:根据URL或请求参数设定当前页码。 4. **获取分页数据**:调用分页类的方法获取当前页的数据。 5. **渲染页面**:根据获取的...
"asp分页类"就是用来实现这种功能的代码库或组件。 分页类通常包含以下几个核心知识点: 1. **参数处理**:分页类需要接收一些参数,如当前页码、每页显示条目数、总记录数等。这些参数的正确处理是分页功能的基础...
强大的分页类通常会考虑更多的实际需求,比如排序、过滤条件、统计信息等,并且可能具有高度可配置性,以适应不同的项目需求。 最后,"分页.rar"可能包含的是一个独立的分页解决方案,可能具有特定的优化或特性。...
ASP.NET 分页类是用于处理大量数据并分批次显示的关键技术,它允许用户在Web应用程序中轻松地浏览大型数据集,提高用户体验,并减轻服务器负担。相比于Visual Studio (VS) 自带的分页控件,自定义分页类提供了更高的...
首先,我们需要创建一个分页类,这个类将包含关于分页的基本信息,如当前页、总页数、每页显示的记录数以及总记录数等。以下是一个简单的分页类的示例: ```java public class Pagination { private int current...
一个分页类通常包含获取总记录数、设置每页显示条数、计算总页数、生成分页链接等功能。例如,可以设计一个简单的分页类: ```php class Pagination { private $total_rows; private $per_page; private $...
"高效asp分页类"就是针对这种情况设计的,旨在处理大数据集时保持快速响应,避免页面加载过慢或服务器压力过大。 高效asp分页类的核心在于优化了数据检索和页面渲染的过程,通常包括以下几个关键点: 1. **数据...
### PHP超强分页类知识点详解 #### 一、概述 “PHP超强分页类”是一款专为PHP开发人员设计的强大工具,旨在简化分页逻辑,提高网页应用的用户体验。该类支持多种显示模式,能够适应不同的场景需求,并且兼容PHP4和...
- **属性**:分页类通常会包含一些属性,如当前页码(currentPage)、每页显示条数(perPage)、总记录数(totalRows)以及总页数(totalPages)等。 - **方法**:分页类的方法包括设置和获取属性值,计算总页数,...
下面将详细介绍分页类的工作原理、如何使用以及相关数据库操作。 首先,PHP分页类的核心功能是计算总页数、生成链接和获取每页的数据。它通常包括以下主要部分: 1. 计算总页数:根据查询语句获取所有记录的数量,...
`说明.txt`是关键的文档,它应该包含了详细的使用指南,包括如何引入分页类、如何配置参数、如何调整样式以及可能出现的问题和解决方案。开发者应仔细阅读这份文档,以便正确地集成和使用这个分页类。 总的来说,这...
这篇压缩包文件"aspfenyelei_asp"很可能包含了一个详细的ASP分页类,这种类通常包含了一系列方法和属性,用于实现高效的分页功能。下面我们将深入探讨ASP分页的相关知识点。 1. **基础概念**:在ASP中,分页涉及到...
在ASP(Active Server Pages)开发中,静态生成分页类是一种常见的优化技术,它能够提高网站性能,降低服务器负载,并且对于搜索引擎优化(SEO)也十分有利。ASP静态生成分页类主要是为了处理大量数据的展示,将动态...
以上代码示例中,`Pagination`就是我们的分页类,它封装了分页逻辑,使得在实际项目中应用分页变得简单易行。通过深入理解并定制此类,我们可以应对各种复杂的分页需求,如自定义URL结构、添加翻页动画、支持无限...
名称: 叶子asp分页类 Name: ShowoPage(vbs class) RCSfile: ReadMe.txt Revision: 0.12.20051114.f Author: Yehe(叶子) Released: 2005-11-14 09:40:13 Descript: ASP分页类,支持access/mssql/mysql/sqlite ...
2. **实例化分页类**:创建一个分页类的对象,传入必要的参数,如总记录数、每页显示的条目数等。 ```php $total_records = count($all_data); // 假设$all_data是所有数据 $per_page = 20; // 每页显示20条数据 $...
"基于Servlet的抽象分页类"通常是指一个设计用于协助在Web应用中实现数据分页功能的类。分页是大型数据集展示时必要的功能,它帮助用户更有效地浏览和管理大量的信息,而无需一次性加载所有数据,提高了用户体验和...
`asp.net 通用分页类`就是为了解决这个问题而设计的,它允许开发者创建一个可复用的组件,以便在不同的数据展示页面上实现高效且灵活的分页功能。 首先,我们来看`C#`语言是如何实现分页逻辑的。在C#中,可以创建一...
描述中提到“无需调试,没有繁琐的页面样式设置”,这表明这个分页类已经考虑到了易用性和灵活性。它可能包含了内置的样式,可以直接嵌入到现有的页面布局中,同时也可能允许自定义样式,以适应各种前端框架。 接...