1、jsp页面代码:
上一页按钮
<s:if test="pageNow == 1||pageNow == 0">
<li><a>上一页 </a></li>
</s:if>
<s:else>
<s:url action="xxx.action" id = "url_pre">
<s:param name="pageNow" value="pageNow-1" />
<s:param name="pageSize" value="5" />
</s:url>
<li> <s:a href="%{url_pre}">上一页</s:a></li>
</s:else>
首页按钮
<s:url action="xxx.action" id = "first_pre">
<s:param name="pageNow" value="0" />
<s:param name="pageSize" value="5" />
</s:url>
<li ><s:a href="%{first_pre}">首页</s:a></li>
末页按钮
<s:url action="xxx.action" id = "final_pre">
<s:param name="pageNow" value="pageCount" />
<s:param name="pageSize" value="5" />
</s:url>
<li><s:a href="%{final_pre}">末页</s:a></li>
下一页按钮
<s:if test="pageNow == pageCount">
<li><a>下一页</li></a>
</s:if>
<s:else>
<s:url action="xxx.action" id = "url_last">
<s:param name="pageNow" value="pageNow+1" />
<s:param name="pageSize" value="5" />
</s:url>
<li><s:a href="%{url_last}">下一页</s:a></li>
</s:else>
2、Action类代码:
private int pageNow = 0;
private int pageSize = 5;
定义如上两个变量,并且提供get和set方法。。。。
int totalRecord = xxxDaoImpl.getNowTermCourseNum("select count(*) from people",pageSize);
List list = xxxDaoImpl.getResultByPage(pageNow * pageSize, pageSize,"from People");
3、DaoImpl实现代码:
[color=red]以下是求得总的页面数:[/color] /**
* 获得总共的页面数
* @param sql 查询sql语句
* @param pageSize 每页显示最大的记录条数
* @return 页面总数
*/
public int getNowTermCourseNum(String hql,int pageSize) {
// TODO Auto-generated method stub
int totalPage = 0;
int total = Integer.parseInt(this.getHibernateTemplate().find(hql).get(0).toString());
if(total % pageSize == 0){
totalPage = total / pageSize;
}else{
totalPage = total / pageSize + 1;
}
return totalPage;
}
接下来最后一步,就是求得指定的记录条数:
/**
* 分页效果显示指定条件下的内容
* @param sID 学号
* @param pageStart 起始记录
* @param pageSize 最大显示记录
* @param hql 查询sql语句
* @return
*/
@SuppressWarnings("unchecked")
public List getResultByPage(int pageStart,int pageSize,String hql) {
List result = null;
Session s = null;
try{
s = this.getSession();
s.beginTransaction();
result = s.createQuery(hql)
.setFirstResult(pageStart)
.setMaxResults(pageSize)
.list();
s.getTransaction().commit();
}catch(Exception e){
e.printStackTrace();
s.getTransaction().rollback();
}finally{
if(s != null){
s.close();
}
}
return result;
}
以上两个方法可以直接拿来用了,只要提供正常的查询HQL语句就行,譬如
String hql = "from People";
以上就实现了基本的分页效果~~~~很简单哟~~
分享到:
相关推荐
根据提供的标题、描述、标签及部分内容,我们可以了解到这篇文章主要探讨的是如何在Struts2与Hibernate框架结合下实现分页功能。接下来将详细解析Struts2与Hibernate如何协作完成这一任务。 ### Struts2与Hibernate...
【Struts2+Hibernate实现分页详解】 在Java Web开发中,Struts2和Hibernate是两个非常重要的框架,它们分别负责MVC模式中的控制层和持久层。Struts2提供了强大的Action类和拦截器,使得业务逻辑处理更加简洁;而...
### Struts2+Hibernate 实现分页效果详解 在 Web 开发中,为了提升用户体验、减少服务器负担,分页功能的应用十分广泛。本篇将基于一个具体的案例——使用 Struts2 和 Hibernate 模块实现分页功能,进行深入剖析。 ...
本篇将介绍如何使用Struts和Hibernate框架来实现Web应用中的分页功能。 首先,Struts是一个基于MVC(Model-View-Controller)设计模式的Java Web框架,它负责处理用户请求并控制应用程序的流程。而Hibernate则是一...
在这个项目中,“spring+struts2+hibernate整合实现分页”是一个基础教程,旨在帮助初学者理解如何在SSH框架下实现数据的分页展示。下面将详细讲解这个主题中的关键知识点。 1. **Spring框架**:Spring是Java应用的...
总之,这个项目展示了如何将Struts2和Hibernate结合使用,以实现文件批量上传到数据库以及Ajax分页显示的功能。通过学习这个项目,开发者可以深入理解Java Web开发中的MVC模式、ORM框架以及前端动态加载技术。
在这个"Struts2 + Hibernate3 分页程序"中,我们将探讨如何在它们的集成环境下实现分页功能。 分页是Web应用中常见的功能,它允许用户以较小的数据块浏览大量数据,提高用户体验。在Hibernate3中,虽然没有提供内置...
通过Struts2处理请求和响应,Spring管理对象和事务,Hibernate进行数据库操作,实现了用户管理与书籍管理的核心功能。对于开发者而言,理解并掌握SSH的整合开发,能够提升开发效率,构建出稳定高效的Web应用。
ExtJs4.2+Mysql+Struts2+Hibernate3实现分页查询 1.libs目录缺少hibernate核心jar包 2.libs目录缺少struts jar 3.WebRoot目录缺少ExtJs4.2核心类库 以上信息我都在项目里面注明了,因为这些内容的文件太大了,CSDN不...
本文将详细介绍如何在Struts1和Hibernate结合的项目中实现分页功能。 一、Struts1框架简介 Struts1是Apache软件基金会的一个开源项目,它提供了MVC架构来设计Web应用程序。在Struts1中,Action类是业务逻辑的核心,...
"ext3+struts2+hibernate+spring的CRUD+分页"是一个典型的Java Web开发组合,用于实现全面的数据管理功能。这个组合充分利用了各个框架的优势,提供了一个强大的后端数据处理和前端展示的解决方案。 首先,EXT3是一...
总的来说,这个"Struts2+Spring2+Hibernate3注册查询搜索分页实例"是一个很好的学习资源,涵盖了Java Web开发中的基础和核心部分。通过学习这个实例,开发者不仅可以掌握三大框架的基本用法,还能了解到如何将它们...
本篇将详细讲解如何利用Struts和Hibernate来实现一个简单的分页功能。 首先,我们需要理解分页的基本原理。分页是为了提高用户体验,避免一次性加载大量数据导致页面加载慢或内存压力过大。在Web应用中,我们通常将...
综上所述,"struts2+hibernate增删改查+分页"是一个基础的Java Web开发示例,它涵盖了MVC架构下,如何利用Struts2处理用户请求,通过Hibernate进行数据库操作,以及实现简单的分页功能。这种组合在实际项目中非常...
通过阅读和学习这些代码,你可以了解到如何将Struts2的请求处理与Hibernate的数据库操作结合,以实现基于Oracle的分页功能。 总结来说,Struts2.0处理HTTP请求,Hibernate管理数据持久化,而Oracle提供高效的数据...
Struts2+Hibernate+Spring+分页+数据库 注意了,只能在IE8上运行,因为我设置的样式不兼容,在其他浏览器上要多难看有多难看。
在这个项目中,"struts+hibernate做的分页显示"主要是利用这两者来实现数据的分页展示,提升用户体验,降低服务器压力。 首先,Struts是一个基于MVC设计模式的Java Web框架,它简化了开发过程,提供了处理HTTP请求...
2. **创建DAO**:实现分页查询的方法,使用Hibernate的Session或SessionFactory进行数据库操作。 3. **配置Service**:在Spring中声明Service,注入DAO,实现业务逻辑,包括计算总页数、获取当前页数据等。 4. **...
总结一下,"struts2+hibernate+spring分页"项目展示了如何在Java Web环境中整合这三个主流框架,实现高效的数据分页。它涉及到Struts2的请求处理,Hibernate的数据库操作,以及Spring的组件管理和事务控制,是Java...