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 | 返回顶部