`
lifeiniao526
  • 浏览: 37727 次
  • 性别: Icon_minigender_1
  • 来自: 济南
文章分类
社区版块
存档分类
最新评论

浅谈Struts分页中的Hibernate如何实现

阅读更多

在进行web应用开发的时候经常要对Struts分页处理,经常看到一些人在问Struts分页处理的问题,现在我把自己的处理方法写在这儿,希望能对需要进行Struts分页处理的朋友有所帮助。

一、在Struts分页有两种结构:

1. 在Action中通过DAO查询出所有的记录,然后加到session或request对象中,传到客户端,由JSP进行分页。

这种方法对于在数据量少的时候很方便,也不影响速度。

2.在Action中每次通过DAO只查询出一页的记录,再传给JSP页面。

这种结构对于数据量大的程序很好,但对于数据量小的情况,会增加对服务器的请求,加大服务器的负载。

二、Hibernate查询

由于在Hibernate中直接提供了对数据库定点定量的查询方法,所以我采用的是第2种方法。

如:

从第1万条开始取出100条记录

三、具体实现

1.Pager类

Pager类用于计算首页、前一页、下一页、尾页的在数据库中的起始行,当前的页码。

2.PagerHelp类

PageHelper这个类,我不用说应该也知道用来干嘛了

3.DAO类

DAO类我就贴这些分页需要的代码了。

“from VehicleProperty vp”也可以用一个参数传进来,有兴趣的自己改一下吧

4.Action

下面是在Action中用到的代码:/

查询语句select count(*) from VehicleProperty 也可以换成你需要的任意的条件(select count(*) from VehicleProperty where ..)

5.JSP页面使用

下面就是在JSP中的应用了:

="/bussiness/clInfo/queryWithPage.do?method=queryWithPage&pageMethod=first
" paramName="PAGER" paramProperty="currentPage" paramId="currentPage">首页

解释一下这一行:"/bussiness/clInfo/queryWithPage.do?method=queryWithPage&pageMethod=first

method=queryWithPage 
是由于我的Action继承的是DispatchAction,需要一个method参数

pageMethod=first 是用来在PageHelper类中判断执行哪个操作

四、Struts分页总结

我做的这个也只是一个借鉴,还有很多没有实现的,比如还可以加一下 go 直接到第n页的功能。

其实最关键的是把当前页号和要执行的是功能(上一页,下一页)的参数从页面传进来,在Action中就可以根据这两个参数去取下一个页面上要显示的记录集了

转自http://java.chinaitlab.com/Struts/786180.html

分享到:
评论

相关推荐

    STRUTS2+HIBERNATE详细的分页实现代码详细的分页实现代码

    下面是一个简化的示例代码片段,展示了如何在Struts2和Hibernate中实现分页功能: ```java // PageTool类定义 public class PageTool { private int pageNum; // 当前页码 private int pageSize; // 每页显示记录...

    论坛系统项目(Struts 2+Hibernate+Spring实现)

    论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts 2+Hibernate+Spring实现)论坛系统项目(Struts...

    Struts2+HIBERNATE实现分页(完整讲解)

    在Hibernate中,我们可以使用`Criteria`或`Query`接口实现分页。例如: ```java Session session = HibernateUtil.getSessionFactory().openSession(); Criteria criteria = session.createCriteria(Soft.class); ...

    Struts+Hibernate实现分页

    这样的分页实现保证了数据的高效加载和用户的流畅体验,同时充分利用了Struts的控制层和Hibernate的数据访问层能力,降低了开发复杂度。在实际项目中,还可以考虑优化如缓存、懒加载等策略来进一步提高性能。

    Struts + Hibernate 分页实现

    在"Struts + Hibernate 分页实现"这个项目中,重点在于如何在Web应用中整合这两个框架,并实现数据的分页显示。分页是大型数据集处理时常见的需求,它能够帮助用户更有效地浏览和管理大量信息,避免一次性加载所有...

    struts2+hibernate实现登录及增删改操作

    3. **登录功能实现**:在Struts2和Hibernate结合的项目中,登录功能通常涉及用户输入验证、数据库查询等步骤。首先,用户在前端界面输入用户名和密码,提交到Struts2的Action。Action中,通过Hibernate的Session查询...

    Struts + Hibernate 实现简单分页功能

    在Hibernate中,这可以通过设置Query的setFirstResult和setMaxResults方法来实现,这两个方法的参数对应于我们之前计算的startIndex和endIndex。 在获取到分页数据后,我们可以将其封装成一个List对象,并将这个...

    Struts2+Hibernate实现用户的增删改查

    Struts2和Hibernate是两种非常重要的Java Web开发框架,它们在构建高效、可维护的Web应用程序中发挥着关键作用。本项目"Struts2+Hibernate实现用户的增删改查"旨在展示如何结合这两种技术来处理数据库操作,实现一个...

    基于Struts 2+Hibernate+Spring实现论坛系统

    Struts 2、Hibernate 和 Spring 是 Java Web 开发中的三个重要框架,它们组合起来可以构建高效、可维护的Web应用程序,尤其是对于复杂的企业级论坛系统。这个基于Struts 2+Hibernate+Spring实现的论坛系统,充分利用...

    基于Struts2+Hibernate5的教务管理系统项目实训

    struts2+hibernate5+MySQL 本项目只是简单模拟教务管理系统的基本功能,通过熟悉的教务管理系统开发来综合训练Struts2和 Hibernate5框架技术的整合应用,并进一步提高项目实践能力。 项目实现的功能包括学生管理部分,...

    Struts2+Hibernate实现新闻发布系统

    在"Struts2+Hibernate实现新闻发布系统"中,Action类可能被用来接收用户发布的新闻信息,如标题、内容、发布日期等,然后调用相应的服务或DAO进行处理。 Struts2还提供了拦截器(Interceptor)机制,可以添加自定义...

    struts1+hibernate分页

    四、在Struts1+Hibernate中实现分页 1. **配置Hibernate** 首先,我们需要配置Hibernate的SessionFactory,并在Action类中注入SessionFactory实例,以便进行数据库操作。 2. **创建实体类和映射文件** 定义与...

    JAVA论坛系统源码(Struts 2+Hibernate+Spring实现)

    在论坛系统中,Spring作为整个应用的“胶水”,将Struts 2、Hibernate以及其他组件紧密集成在一起。它管理对象的生命周期,处理事务,并通过AOP实现如日志记录、权限验证等横切关注点。 4. **整合三大框架**:...

    ssh框架用struts2 hibernate实现图片的上传源码

    以上就是SSH框架中使用Struts2和Hibernate实现图片上传的主要知识点,涵盖了Web请求处理、ORM框架、文件上传、数据库操作以及前端交互等多个方面。实际项目开发时,还需要结合具体的业务需求和安全规范进行详细设计...

    JAVA struts+hibernate实现的网络购物系统.zip

    JAVA struts+hibernate实现的网络购物系统JAVA struts+hibernate实现的网络购物系统JAVA struts+hibernate实现的网络购物系统JAVA struts+hibernate实现的网络购物系统JAVA struts+hibernate实现的网络购物系统JAVA ...

    struts2与Hibernate整合

    Struts2和Hibernate是两种非常重要的Java开源框架,它们在企业级Web开发中扮演着核心角色。Struts2是一款强大的MVC(Model-View-Controller)框架,它为构建基于J2EE的Web应用程序提供了结构化的支持。而Hibernate则...

    Struts2+hibernate实现登陆和增删改

    在"Struts2+Hibernate实现登录和增删改"这个项目中,首先我们需要理解这两个框架的核心概念和工作原理: 1. **Struts2**:Struts2的核心是Action类,它处理用户的请求,并通过配置文件(struts.xml)来定义动作与...

    分页(struts和hibernate实现)

    总的来说,Struts和Hibernate结合实现的分页功能是Java EE应用中的常见实践,它通过解耦模型和视图,简化了代码编写,提高了开发效率。通过这个例子,你可以进一步掌握这两个框架的集成使用技巧,为你的项目开发带来...

    Struts2+Hibernate实现文件上传

    在这个“Struts2+Hibernate实现文件上传”的项目中,我们将探讨如何结合这两个框架来实现在Web应用中上传图片并存储到数据库的过程。 首先,让我们从Struts2的角度来看。Struts2提供了一种灵活的MVC(模型-视图-...

    struts2和hibernate整合,包含分页

    2. **创建实体类**:在Hibernate中,你需要为每个数据库表创建对应的Java实体类,这些类通常继承自Hibernate的BaseEntity,并使用注解(@Entity)来标识为数据库表。 3. **配置Hibernate**:编写hibernate.cfg.xml...

Global site tag (gtag.js) - Google Analytics