45fan.com - 路饭网

搜索: 您的位置主页 > 网络频道 > 阅读资讯:实现struts分页的步骤

实现struts分页的步骤

2016-09-07 08:49:00 来源:www.45fan.com 【

实现struts分页的步骤

查询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

 

 

本文地址:http://www.45fan.com/a/question/73551.html
Tags: 实现 一种 Struts
编辑:路饭网
关于我们 | 联系我们 | 友情链接 | 网站地图 | Sitemap | App | 返回顶部