查询Action的代码片断
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
Base queryForm= (Base) form;
if(!queryForm.getName().equals("")){
PageController pc=new PageController();
EmployeeBase service=new EmployeeBase();
ArrayList result=(ArrayList)service.search(queryForm,pc);
HttpSession session=request.getSession();
session.setAttribute("queryForm",queryForm);
session.setAttribute("pageController",service.getPageController());
request.setAttribute("queryResult",result);
request.setAttribute("pageController",service.getPageController());
return mapping.findForward("haveResult");
}else{
return mapping.findForward("noResult");
}
}
(3),翻页Action的代码片断
public ActionForward execute(
ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
file://读取翻页参数
TurnPageForm turnPageForm=(TurnPageForm)form;
file://从PageController中取出查询信息,并使用bean提供的调用接口处理结果
HttpSession session=request.getSession();
PageController pc=(PageController)session.getAttribute("pageController");
Base queryForm=(Base)session.getAttribute("queryForm");
pc.setCurrentPage(turnPageForm.getViewPage());
EmployeeBase service=new EmployeeBase();
ArrayList result=(ArrayList)service.search(queryForm,pc);
file://根据参数将数据写入 request
request.removeAttribute("queryResult");
request.removeAttribute("pageController");
request.setAttribute("queryResult",result);
request.setAttribute("pageController",pc);
file://forward 到显示页面
return mapping.findForward("haveResult");
}
(4)数据库访问bean中的片断
public Collection search(Base base, PageController pc)
throws SQLException {
ArrayList emps = new ArrayList();
ResultSet rs = getSearchResult(base);
rs.absolute(-1);
pc.setTotalRowsAmount(rs.getRow());
setPageController(pc);
if (rs.getRow() > 0) {
rs.absolute(pc.getPageStartRow());
do {
System.out.println("in loop" + rs.getRow());
Base b = new Base();
b.setName(rs.getString("Name"));
b.setIdCard(rs.getString("IDCard"));
System.out.println("From db:" + rs.getString("IDCard"));
emps.add(b);
if (!rs.next()) {
break;
}
} while (rs.getRow() < (pc.getPageEndRow() + 1));
}
return emps;
}
(5)在jsp中,翻页部分的代码片断
<bean:write name="pageController" property="description"/>
<logic:equal name="pageController" property="hasPrevious" value="true">
<a href="turnPage.do?viewPage=<bean:write name="pageController" property="previousPage"/>" class="a02">
Previous
</a>
</logic:equal>
<logic:equal name="pageController" property="hasNext" value="true">
<a href="turnPage.do?viewPage=<bean:write name="pageController" property="nextPage"/>" class="a02">
Next
</a>
</logic:equal>
这样一来,翻页的功能可以以你喜欢的方式表现给client
分享到:
相关推荐
Struts分页算法是Java Web开发中常用的一种技术,它主要用于处理大数据集合的展示,提高网页的加载速度和用户体验。在Struts框架下,我们通常会结合Servlet、JSP和数据库查询来实现分页功能。以下将详细讲解Struts...
分页是一种常见的技术手段,用于在数据量较大时提高用户体验。其实现的基本思路是将数据分割成多个小部分,每次只显示其中的一部分数据。用户可以通过翻页操作来查看其他部分的数据。 #### Struts2与Hibernate在...
Struts2.0 是一个流行的Java Web开发框架,它提供了一种组织和控制MVC(Model-View-Controller)架构的方式,使得开发者可以更高效地构建动态Web应用程序。数据分页是Web应用中常见的需求,特别是在处理大量数据时,...
本项目名为“jsp +struts 分页经典”,显然是一个利用这两种技术实现的分页展示数据的案例。下面我们将深入探讨JSP和Struts框架,以及它们在分页、查询和数据操作中的应用。 首先,JSP是Java平台上的动态网页技术,...
本文将详细介绍Struts2实现分页效果的第二种方法。 在Struts2中,实现分页通常涉及以下几个关键步骤: 1. **模型(Model)**:首先,我们需要一个实体类来存储待分页的数据,例如`User`。然后,创建一个`PageBean`类...
在IT领域,分页是一种常见的数据展示方式,特别是在处理大量数据时,为了提高用户体验和页面加载速度,我们会将数据分成多个部分(页)进行显示。本篇将介绍如何使用Struts和Hibernate框架来实现Web应用中的分页功能...
在处理大量数据时,分页是一种常见的优化手段,能够有效地提升用户体验,避免一次性加载过多数据导致的页面响应慢或者内存压力大等问题。下面我们将深入探讨如何在Struts框架下实现分页功能。 首先,我们需要理解...
Struts框架提供了一种优雅的方式来实现分页,使得在Java应用程序中实现这一功能变得更加简单。 在传统的Java开发中,实现分页可能涉及到复杂的数据查询、计算总页数、处理请求参数等步骤。然而,Struts通过...
在开发Web应用程序时,分页是一种常见的功能,用于提高用户体验并优化系统性能。"Hibernate+Struts分页的实现"这个话题关注的就是如何在大型数据集的场景下,结合这两种技术来有效地实施分页策略。 首先,让我们...
在Web应用程序中,数据分页是一种常见的功能,用于提高用户体验并优化服务器性能。当我们处理大量数据时,一次性加载所有数据可能会导致页面加载缓慢,甚至内存溢出。因此,数据分页技术应运而生。 **Struts2.0 ...
在开发web程序时,从数据库中取出来的数据一般都要分页显示在页面上,分页显示的方法非常多,有人写自定义标签,用自己写的标签进行分页显示,我个人觉得这是一种比较好的方法。下面是我用Struts2做的一个分页显示...
在Ajax+Struts分页中,主要涉及以下几个步骤: 1. **前端页面**:使用JavaScript和HTML构建用户界面。当用户点击分页链接时,会触发Ajax请求,而不是传统的页面跳转。 2. **Ajax请求**:通常使用JavaScript库如...
在IT行业中,分页是一种非常常见的技术,尤其是在处理大量数据时,它能够有效地提高用户体验,减少服务器负担。这里我们将深入探讨“分页大全”,包括JDBC分页、Struts分页以及分页标签的使用。 首先,让我们了解...
Struts是一种基于MVC(Model-View-Controller)设计模式的Java Web框架,它帮助开发者构建结构清晰、可维护性高的应用程序。Ajax,全称Asynchronous JavaScript and XML,是一种用于创建动态网页的技术,允许页面在...
Struts是一种基于MVC(Model-View-Controller)设计模式的框架,用于构建企业级的Web应用程序,而DAO(Data Access Object)模式则是为了解耦业务逻辑层和数据访问层,使得数据库操作更加独立,易于维护和扩展。...
在Web应用开发中,为了提供更好的用户体验,无刷新分页已经成为一种常见的需求。本项目采用jQuery、Struts2和Ajax技术实现了这样一个功能,用户可以在不重新加载整个页面的情况下查看不同页的数据,提高了交互效率。...
本文将深入探讨一种高效且简洁的Struts分页方法,旨在提供一个更加优化的解决方案。 ### 开发环境 本案例采用的开发环境包括:JBuilderx集成开发环境、Weblogic8.1应用服务器、Oracle9i数据库以及Windows2003操作...
1. **分页基础概念**:分页是一种用户界面技术,用于将大量数据分成可管理的小块,每次只显示一部分,用户可以通过导航按钮浏览更多内容。这减轻了服务器压力,同时也提高了页面加载速度。 2. **Struts框架中的分页...
Struts分页是一种在Web应用中实现数据展示的高效方式,尤其当数据量较大时,分页能够提高用户体验,避免一次性加载过多数据导致页面响应慢。Struts是Apache的一个开源框架,它主要用于构建基于Java EE的Web应用。...
Struts2分页实现是Web开发中常见的需求,它能够帮助用户更有效地浏览大量数据,提高用户体验。在本文中,我们将深入探讨如何在Struts2框架下实现分页功能。 首先,我们需要理解分页的基本原理。分页的核心是将大...