分页总结:
通过当前页判断是否有上一页下一页和首尾页
通过总记录数得出总页数
public class Pager {
private int currentPage;//当前页码
private int pageSize=3;//每页记录数
private int totalPage;//总页数
private int totalSize;//总记录数
private boolean hasFirst;
private boolean hasPrevious;
private boolean hasNext;
private boolean hasLast;
//初始化
public Pager(int currentPage,int totalSize){
this.currentPage=currentPage;
this.totalSize=totalSize;
}
public int getCurrentPage() {
return currentPage;
}
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
}
public boolean isHasFirst() {
if(this.currentPage == 1){
return false;
}
return true;
}
public void setHasFirst(boolean hasFirst) {
this.hasFirst = hasFirst;
}
public boolean isHasLast() {
if(this.currentPage == this.getTotalPage()){
return false;
}
return true;
}
public void setHasLast(boolean hasLast) {
this.hasLast = hasLast;
}
public boolean isHasNext() {
if(this.isHasLast()){
return true;
}
return false;
}
public void setHasNext(boolean hasNext) {
this.hasNext = hasNext;
}
public boolean isHasPrevious() {
if(this.isHasFirst()){
return true;
}
return false;
}
public void setHasPrevious(boolean hasPrevious) {
this.hasPrevious = hasPrevious;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getTotalPage() {
totalPage = totalSize/pageSize;
if(totalSize%pageSize!=0)
totalPage++;
return totalPage;
}
public void setTotalPage(int totalPage) {
this.totalPage = totalPage;
}
public int getTotalSize() {
return totalSize;
}
public void setTotalSize(int totalSize) {
this.totalSize = totalSize;
}
}
//DAO
public List queryByPager(int currentPage,int pageSize){
//计算起始行从0开始
final int startRow = (currentPage-1)*pageSize ;
final int maxResults = pageSize;
//利用回调接口,调用Hibernate原生API
List bookList =(List) getHibernateTemplate().execute(new HibernateCallback(){
public Object doInHibernate(Session session)throws HibernateException,SQLException{
Query query = session.createQuery("From Book as b left join fetch b.category ")
.setFirstResult(startRow)
.setMaxResults(maxResults);
return query.list();
}
});
return bookList;
}
分享到:
相关推荐
jsp 分页实现总结大全jsp 分页实现总结大全jsp 分页实现总结大全
JSP分页总结
根据项目中的实际经验和网上资料总计了一些实现分页查询的方法
oracle mysql sqlserver 三大数据库在实际开发中的最常用分页书写!
java分页的总结,可以直接复制到项目中。
mysql,oracle,sql server分页总结与比较
正在学习Hibernate的朋友,且对分页存在疑问,此文件对你有一定帮助。
java分页方法总结 多种实现包括 jsp sql等等
这是一个分页的sql的总结,方法简单一看就懂
分页网上下载总结的 jsp 分页网上下载总结的 jsp分页网上下载总结的 jsp
目 录 SmartClient 介绍 2 ...smartclient 分页总结 82 smartclient 手动设置参数传递 83 smartclient listgrid style (加竖线、横线、背景色) 84 smartclient listgrid 数据之间的拖拽 86 JS传递中文参数乱码 90
总结各数据库分页语法支持,很实用,大家可以看看。
WPF MVVM DataGrid分页案例 运用数据绑定 Command 可作为MVVM学习使用
存储过程分页实现实例源码 源码描述: Filename: PeterPageList * Description: 主要运用sql存储过程进行... * 备注信息: 上传部分自己总结的常用方法的封装,有不足和不完美之处,希望大家指出来,愿意一起学习交流
资源名称:SQL Server 2005 一千万条以上记录分页数据库优化经验总结 资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
几个php分页类,很好用的,初学者可以直接使用。有经验的开发人员也可研究学习,很不错!
PHP分页类, 用PHP写的简单分页类, 具体描述原理.
操作系统课程设计小题之----分页系统模拟实验
关于jqGrid实现分页自己的一些总结,
sql语句分页查询 自己总结下来的 希望能给大家一点帮助!