DAO层的代码分页代码:
public PageModel findByPageModel(String hql,PageModel pm) {
pm.setTotalCount(this.getHibernateTemplate().find(hql).size());
pm.setGoToHref(ServletActionContext.getRequest().getServletPath().replace("/",""));
int totalCount = pm.getTotalCount();
int pageSize = pm.getPageSize();
int totalPage = (totalCount+pageSize-1)/pageSize ;
int currentPage = pm.getCurrentPage() ;
pm.setTotalPage(totalPage);
int offset = (currentPage-1)*pageSize;
pm.setList(this.getSession().createQuery(hql).setFirstResult(offset).setMaxResults(pageSize).list());
return pm;
}
分页的JAVABEAN:
public class PageModel {
private int currentPage;
private int pageSize;
private int totalCount;
private int totalPage;
private List list ;
private String goToHref;
public int getCurrentPage() {
if(currentPage<=0) currentPage=1;
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public int getPageSize() {
if(pageSize<=0) pageSize=10;
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalCount() {
return totalCount;
}
public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
}
public int getTotalPage() {
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public List getList() {
return list;
}
public void setList(List list) {
this.list = list;
}
public String getGoToHref() {
return goToHref;
}
public void setGoToHref(String goToHref) {
this.goToHref = goToHref;
}
}
JSP页面:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>
<link rel="stylesheet" type="text/css" href="<%=basePath %>findByHql/pagingBar/css/pagingBar.css">
<input type="button" class="firstPage commonPage" alt="首页" title="首页"/>
<input type="button" class="beforePage commonPage" alt="上一页" title="上一页"/>
<input type="button" class="nextPage commonPage" alt="下一页" title="下一页"/>
<input type="button" class="lastPage commonPage" alt="尾页" title="尾页" />
<input type="hidden" id="currentPage" value="${requestScope.pm.currentPage }" />
<input type="hidden" id="totalPage" value="${requestScope.pm.totalPage }" />
<input type="hidden" id="goToHref" value="${requestScope.pm.goToHref }" />
<span class="cp">当前第${requestScope.pm.currentPage }页</span>
<span class="tc"> 相关资讯:${requestScope.pm.totalCount }条</span>
<span class="ps">每页${requestScope.pm.pageSize }条 </span>
<span class="tp">共${requestScope.pm.totalPage}页</span>
<script type="text/javascript" src="<%=basePath%>js/jquery.js"></script>
<script type="text/javascript">
(function($) {
var currentPage = parseInt($('#currentPage').val());
var totalPage = parseInt($('#totalPage').val());
var toHref = $('#goToHref').val();
$('.firstPage').bind('click', function() {
goToHref(1);
});
$('.nextPage').bind('click', function() {
if (currentPage >= totalPage)
goToHref(totalPage);
else
goToHref(currentPage + 1);
});
$('.beforePage').bind('click', function() {
if (currentPage <= 1)
goToHref(1);
else
goToHref(currentPage - 1);
});
$('.lastPage').bind('click', function() {
goToHref(totalPage);
});
function goToHref(cp) {
document.location.href = toHref+"?currentPage=" + cp;
}
})(jQuery)
</script>
CSS:下面有几张图片需要自己找...
/*点击栏*/
.commonPage{
width: 16px;
height: 16px;
border: none;
cursor: pointer;
}
.firstPage{
background: url("../images/page-first.png") no-repeat;
}
.nextPage{
background: url("../images/page-next.png") no-repeat;
}
.beforePage{
background: url("../images/page-prev.png") no-repeat;
}
.lastPage{
background: url("../images/page-last.png") no-repeat;
}
/*显示栏*/
.cp,.tc,.ps,.tp{
font-size: 14px;
}
在action中调用DAO层的方法,给currentPage和pageSize设置初始值,然后就返回一个list到你分页的页面迭代,以后就直接嵌套在分页页面中就行
分享到:
相关推荐
通过修改bootstrap table js 定制出自己的分页栏,样式仿照jqGrid样式,支持输入页码跳转
使用jquery,动态生成table表格,使用jquery.pagination.js来实现分页栏
配合博客: http://blog.csdn.net/zy19940906/article/details/75033090
博客地址:http://blog.csdn.net/zy19940906/article/details/75223238
《js分页栏生成及数据取出》 使用方法说明 使用jquery php html5 css3来编写的js分页代码,方便大家进行稍加修改之后应用与自己的web页面或者站点。 如果需要观看demo可以查看: http://sunshine.ztime.net 一个...
地址 https://coding.net/u/LXChun/p/XCSegmentControl/git?public=true
layui的分页栏,laypage.js
DHTMLX grid复制以及分页栏跳转,支持grid的复制和分页跳转JS
本文实例为大家分享了vue实现分页栏效果的具体代码,供大家参考,具体内容如下 当我们在获取后台数据时,特别是获取大量的列表数据时,页面内能展示的数据不能过多,不然让用户看起来很疲惫,体验度不高。这个时候就...
一个简单的分页栏,包括长度Menu,i18n支持,基于Vue2.x
domino xpages 开发 视图view视图分页栏加按钮
雨松MOMO 《IOS入门开发系列专题》 IOS 入门开发之分页栏TableBar的使用(四) 欢迎大家下载阅读,哇咔咔。
经常在电商平台遇到的分页栏效果 https://coding.net/u/LXChun/p/XCSegmentControl/git?public=true
分页栏是网页上最常见不过的一个组件,本博文给出分页栏的一个web2.0标准示例,并作简要分析
layui分页及日期控件中文显示乱码,下载后解压...文件主要适用于前端及时开发,解决layui部分功能显示出现乱码问题,主要涉及到表格渲染后分页栏工具中文显示乱码,以及使用layui日期控件所显示的日期中文乱码问题。
1.分页栏与滑动视图绑定 2.点击分页栏自动滑动到对应视图 3.滑动的到视图对应分页栏自动显示选中样式 效果图 上代码 wxml 分页标签1 <view class={{tabArr.tabCurrentIndex==1?'active':''}}
微信小程序顶部分页导航栏,可以实现页面左右切换,自动设置宽度等
输入参数:查询表格名称、当前页码、每页显示最大记录数、分页栏步长 输出参数为Map集合,分别对应:总记录数、总页数、分页栏步长指数、起始页码、结束页码、上一页标识、下一页标识、当前页码 该代码不包括数据...