分页总结:
通过当前页判断是否有上一页下一页和首尾页
通过总记录数得出总页数
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分页实现是一个涉及到数据库操作、服务器端逻辑和客户端展示的综合过程。开发者需要理解如何在后台处理分页逻辑,如何将数据传递给前端,以及如何在前端展示分页效果。掌握这些知识后,无论是开发大型网站...
在IT领域,尤其是在数据库开发和应用中,分页查询是一个常见的需求,特别是在处理大量数据时,以提高用户体验和系统性能。Pro*C,是Oracle提供的一种预编译器,用于将C语言与PL/SQL结合,使得在C/C++程序中可以直接...
总结一下,Oracle的分页依赖于`ROWNUM`,可能在大数据量下效率较低;SQL Server的`ROW_NUMBER()`和`OVER()`组合提供了更灵活和高效的分页方案;而MySQL的`LIMIT`则提供了简单易用的分页功能,但在处理大量数据时,`...
### JSP分页技术详解与实现 在Web开发中,数据展示往往涉及到大量的记录,而一次性加载所有数据不仅会增加服务器负担,降低用户体验,还可能导致页面加载缓慢。为了解决这一问题,分页技术应运而生。本文将对JSP...
在大型应用中,数据量通常很大,为了提高用户体验和服务器性能,分页查询成为必不可少的功能。本篇文章将深入探讨Hibernate中的分页实现方式。 一、Hibernate分页基本概念 分页查询是指在检索数据时,不是一次性...
关于压缩包内的“分页总结—完成”文件,这很可能是对分页工具的详细说明或使用教程,包括如何配置、如何在JSP页面中调用自定义标签、如何传递参数等。这份文档将是你理解和使用工具的关键,建议仔细阅读并按照指导...
### Java分页技术详解 在Java Web开发中,分页是一项常见的需求,尤其是在处理大量数据时,为了提高用户体验和服务器性能,将数据分成多个页面显示是必要的。本文将基于提供的代码片段,深入解析Java分页的基本原理...
mysql,oracle,sql server分页总结与比较
### Java分页方法总结 #### 一、MySQL的分页技术 MySQL的分页操作相对简单,主要通过`LIMIT`语句实现。该语句允许开发者指定查询结果集中的起始位置以及返回的行数。这为实现网页上的分页功能提供了极大的便利。 ...
### 总结 在实际应用中,选择哪种分页查询方法应考虑数据库的具体环境、数据量大小以及查询性能需求。ROWID适合于数据量不大且对性能要求较高的场景;ROW_NUMBER()窗口函数则适用于数据量大、对排序有明确要求的...
总结来说,实现Java AJAX分页和JSP分页涉及前后端的协作。前端通过AJAX与后端通信,后端处理请求并从数据库获取数据,然后将数据返回给前端,前端再更新页面内容。这个过程提升了用户体验,使得浏览大数据集变得更加...
下面将对“php分页代码总结”进行详细阐述。 首先,PHP分页通常涉及到以下几个核心概念: 1. **总记录数**:这是数据库查询到的所有数据的数量,用于计算总的页数。 2. **每页记录数**:用户可以根据需求设定每一...
总结,MySQL的分页功能是处理大数据量查询的关键技术,通过合理使用`LIMIT`和`OFFSET`,配合索引优化,可以有效地提高查询效率,提升用户交互体验。同时,随着版本升级,MySQL提供了更多分页策略和技术,如窗口函数...
总结一下,.NET分页和ASP.NET分页是处理大量数据的关键技术。理解服务器端分页和数据库端分页的区别,选择合适的方式,结合适当的控件和数据源,以及编写自定义逻辑,可以有效地实现高效且用户友好的分页功能。在...
总结,ASP分页技术涉及到数据库操作、页面渲染和用户体验设计等多个方面。正确地实现和优化分页不仅可以提高网站性能,还能提供良好的用户体验。通过学习和实践,你可以掌握如何在ASP环境中创建高效、美观的分页系统...
总结起来,MySQL的分页方法主要包括假分页和LIMIT分页。假分页适合数据量小、对服务器压力不敏感的场景,而LIMIT分页则更适合数据库分页,特别是配合索引和优化策略,能有效提高查询效率。在实际应用中,应根据具体...
这里,我们主要关注的是“分页网上下载总结的jsp”这个主题,它涉及到网页开发中的JavaServer Pages(JSP)技术以及如何实现分页功能。 **分页原理** 分页的基本原理是将大量的数据分成若干个较小的部分,每个部分...
总结起来,"asp 数字分页 仿百度分页 仿谷歌分页"项目主要涉及以下知识点: 1. ASP编程:使用VBScript编写服务器端脚本。 2. ADO数据库操作:创建数据库连接,执行SQL查询。 3. 数据库分页:利用SQL语句实现数据的...
总结起来,ASP分页是通过限制数据库查询返回的数据量,实现Web页面数据的分块加载。通过编写分页类,我们可以方便地在不同的页面中复用分页逻辑,提高代码的可维护性和效率。理解并熟练掌握这一技术,对于提升ASP...
总结,ASP实现超简单分页显示主要包括以下步骤: 1. 建立数据库连接。 2. 根据当前页数和每页记录数构造SQL查询语句。 3. 执行SQL并获取数据。 4. 在页面上显示数据并创建分页链接。 5. 考虑优化和扩展,提升用户...