很久以前做的分页包,好不容易找到的,所以上传一下
显示后效果如下:
第 1 页/共 100页
首页 上一页 5 6 7 8 9 10 11 12 13 14
下一页 尾页 (数字部分显示10个)
包分为:
pagebean.xml 放在项目的WEB-INF/classes/下 (eclipse的src下)
<?xml version="1.0" encoding="UTF-8"?>
<pagebean-config>
<pagebean name="playlistpage" class="com.provideo.ibox.playlist.actions.PlayListAction"/> <pagebean name="playpage" class="com.provideo.ibox.playlist.actions.PlayAction"/>
<!-- 可多个 -->
</pagebean-config>
playlistpage 为 session中的一个pagebean的key
PageBean.java
PageBeanInterface.java (里面只有一个接口,就是getAllRow(),获取所有行)
pageFactory.java
ReadPageBeanXML.java (读pagebean.xml)
使用:
一.在pagebean.xml中为要分页的页面分配一个key
二.DAO类实现PageBeanInterface接口,并写一个分页方法
public List listPlaylistPage(int page,int row){
String sql = "select ID, Name from `.`Play_List` limit ?,?";
List list = new ArrayList();
Connection con = null;
try {
con = new DBConnSourceByStruts().getConnection();
} catch (SQLException e1) {
e1.printStackTrace();
}
try{
ps = con.prepareStatement(sql);
ps.setInt(1, (page - 1 ) * row);
ps.setInt(2, row);
ResultSet rs = ps.executeQuery();
while(rs.next()){
PLBean bean = new PLBean();
bean.setId(rs.getInt(1));
bean.setName(MyString.isotoGbk(rs.getString(2)));
bean.setOwner(rs.getString(3));
bean.setDesc(MyString.isotoGbk(rs.getString(4)));
bean.setDuration(rs.getString(5));
bean.setElapsedtime(rs.getString(6));
bean.setFilesize(rs.getString(7));
bean.setAddtime(rs.getString(8));
bean.setModifydate(rs.getString(9));
list.add(bean);
}
}catch (Exception e) {
e.printStackTrace();
}finally{
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
return list;
}
三.action 中调用pagebean
Integer typeid = -1;
if(request.getParameter("typeid") != null){
typeid = Integer.parseInt(request.getParameter("typeid"));
}
Integer pageCount = 20;
if(request.getParameter("pageCount") != null){
pageCount = Integer.parseInt(request.getParameter("pageCount"));
}
PageBean page = pageFactory.createPageBean(getAllRow(typeid),"propPage",pageCount, request, response);
List pl_list = dao.listPlaylistPage(page.getPage(), page.getRow());
request.getSession().setAttribute("pageCount", pageCount);
request.setAttribute("playlistlist", pl_list);
四.页面上使用
<table class="font3">
<c:choose>
<c:when test="${sessionScope.propPage.noResultShow=='' }">
<tr bgcolor="#ffffff">
<td align="left">
第 ${sessionScope.propPage.page } 页 / 共
${sessionScope.propPage.allPage } 页
<a href="${pageContext.request.contextPath}/playlistaction.do?method=listPlaylistPage&page=1&typeid=-1">首页 </a>
<a href="${pageContext.request.contextPath}/playlistaction.do?method=listPlaylistPage&typeid=-1&page=${sessionScope.propPage.page-1}">上一页</a>
<c:if test="${not empty sessionScope.propPage.pageNums}">
<logic:iterate id="num" collection="${propPage.pageNums}">
<a href="${pageContext.request.contextPath}/playlistaction.do?method=listPlaylistPage&page=${num }"> ${num } </a>
</logic:iterate>
</c:if>
<a href="${pageContext.request.contextPath}/playlistaction.do?method=listPlaylistPage&typeid=-1&page=${sessionScope.propPage.page+1}">下一页</a>
<a href="${pageContext.request.contextPath}/playlistaction.do?method=listPlaylistPage&typeid=-1&page=${sessionScope.propPage.allPage}">尾页 </a>
</td>
</tr>
</c:when>
<c:otherwise>
<tr bgcolor="#ffffff">
<td align="center">
${sessionScope.propPage.noResultShow }
</td>
</tr>
</c:otherwise>
</c:choose>
</table>
结束
如果还有问题,也问题不大,自已调调就行了
看上去步骤比平时多了一两步,但在多处可共用这个pagebean,个人觉得还是不错的,有更好的请指点
分享到:
相关推荐
本资源“jsp分页打包下载”提供了一个通用的JSP分页解决方案,旨在帮助开发者快速、高效地实现这一功能,避免重复造轮子。 首先,我们需要理解什么是JSP(JavaServer Pages)。JSP是Java的一个子技术,它允许开发者...
总结来说,实现Java AJAX分页和JSP分页涉及前后端的协作。前端通过AJAX与后端通信,后端处理请求并从数据库获取数据,然后将数据返回给前端,前端再更新页面内容。这个过程提升了用户体验,使得浏览大数据集变得更加...
1. **配置插件**:在项目中引入`jspPageControlor`的jar包,并在配置文件中进行必要的设置,如指定分页参数名、每页记录数等。 2. **编写JSP页面**:在JSP页面中,通过插件提供的标签库,插入分页控件。这些控件会...
**JSP分页显示技术详解** 在Web开发中,数据量较大的时候,通常需要采用分页的方式来展示数据,以提高用户体验并减轻服务器负担。JSP(JavaServer Pages)作为Java平台上的动态网页技术,提供了丰富的功能来实现这...
在"分页的实现.rtf"文件中,可能包含了一个具体的JSP分页实现案例,包括SQL查询、Servlet处理逻辑以及JSP页面的代码片段,通过阅读和理解这个案例,可以加深对JSP分页实现的理解。 总结,JSP分页实现是一个涉及到...
**JSP分页技术详解** 在Web开发中,分页是一种常见的用户界面设计技术,它使得大量数据可以按页展示,提高用户体验并减轻服务器压力。本示例是基于JSP(JavaServer Pages)和SQL Server 2005构建的一个简单易懂的...
"jsp.rar_jsp 分页_jsp分页_jsp实现分页_分页"这个压缩包显然包含了一套完整的 JSP 分页解决方案。下面我们将详细探讨 JSP 实现分页的相关知识点。 1. **JSP基本概念**: JSP 是一种基于 Java 的服务器端脚本语言...
本资源提供了一个非常好用的JSP分页标签,它简化了在JSP页面上实现分页的过程,无需编写过多的Java代码,只需在JSP页面上插入特定的标签即可。 1. **JSP分页标签**:JSP分页标签是一种预定义的、可重用的组件,可以...
"jsp 分页源码.rar"这个压缩包可能包含了一个完整的JSP分页实现的源代码示例,让我们来详细探讨一下JSP分页的相关知识点。 1. **分页原理**: - 分页的基本思想是将大量数据分成若干小块(每块称为一页),每次只...
"jsp分页所需架包.rar" 提供了实现JSP分页所需的一些库文件和资源。下面将详细讨论JSP分页的实现原理、所需组件以及如何利用这些库文件来实现分页功能。 1. JSP分页基础: - **原理**:分页主要是通过查询数据库并...
`jsp分页循环显示`就是一种这样的技术,它结合了`JSP(JavaServer Pages)`和`Servlet`,用于从数据库获取数据并以分页的方式在网页上呈现。本篇文章将深入讲解这一技术的实现原理及步骤。 首先,我们需要理解JSP和...
很实用的JSP分页代码,只要在需要分页的页面包含这个JSP就可以了
在这个场景中,我们将讨论如何在Java环境下,结合jsp(JavaServer Pages)来实现分页功能。 分页主要涉及到两个关键组件:前端展示和后端处理。在jsp中,前端通常负责展示分页链接或按钮,而后端则处理请求,根据...
**jsp分页技术算法详解** 在Web开发中,分页技术是必不可少的,尤其是在处理大量数据展示时。JSP(JavaServer Pages)作为Java的一种视图技术,提供了强大的功能来实现用户界面的动态生成。本篇文章将深入探讨JSP中...
本文将深入探讨JSP分页的各个方面,包括基本概念、实现方式、优点和常见问题。 1. **分页基础** - 分页是将大量数据分成小块显示,每次只加载一部分,以提高页面加载速度和用户体验。 - 在JSP中,分页通常与...
**JSP分页技术详解** 在Web开发中,分页是一种常见的用户界面设计,用于处理大量数据的展示,使得用户可以逐步浏览,提高用户体验。本篇文章将以“JSP分页小例子”为出发点,详细讲解如何在Java Web环境中实现JSP...
**JSP分页插件详解** 在Web开发中,数据量较大的时候,为了提高用户体验,通常会采用分页的方式来展示信息。JSP(JavaServer Pages)作为Java领域常用的动态网页技术,结合分页插件可以方便地实现这一功能。本篇...
【纯jsp分页查询】是一种在Web开发中常见的技术,主要应用于数据量较大时,为了提高用户体验和页面加载速度,将大量数据分为多个部分(页)进行显示。在这个项目中,开发者使用了JSP(JavaServer Pages)技术,这是...