现在继续
四、Ation ActionForm 已经JSP页面
drug_list.jsp
不知道怎么贴Html代码,一贴就出问题。。我还以为字数限制。汗。。
代码放到附件中
BaseForm代码,BaseForm中封装与分页相关属性
java 代码
- //页码
- protected int pageNo;
- // 每页显示数量
- protected int pageSize;
- // 排序字段
- protected String sortType;
- // 排序类型
- protected String isDesc;
- // 总页数
- protected int totalPage;
DrugQueryForm代码,DrugQueryForm 放置查询相关属性
java 代码
- //查询关键字
- private String keyString;
- //查询字段
- private String queryByOne;
最后Action代码
java 代码
- public ActionForward goTo(ActionMapping mapping, ActionForm form,
- HttpServletRequest request, HttpServletResponse response) {
- DrugQueryForm dqf=(DrugQueryForm) form;
- DetachedCriteria detachedCriteria = DetachedCriteria.forClass(Drug.class);
- //设置查询条件
- detachedCriteria.add(Restrictions.like(dqf.getQueryByOne(),"%"+dqf.getKeyString()+"%"));
- //取得符合条件的总记录数
- Long totalCount=ds.getDrugCount(detachedCriteria);
- //设置排序方式及字段
- if(dqf.getSortType()==null || dqf.getSortType().equals("")){
- }else{
- if (dqf.getIsDesc().equals("asc")){
- detachedCriteria.addOrder(Order.asc(dqf.getSortType()));
- }else{
- detachedCriteria.addOrder(Order.desc(dqf.getSortType()));
- }
- }
- String go=request.getParameter("goto");
- // 每页显示数目pageSize
- int pageSize=20;
- if (dqf.getPageSize()==0){
- pageSize=20;
- }else{
- pageSize=dqf.getPageSize();
- }
- // 总页数totalPage
- int totalPage=1;
- if (totalCount>dqf.getPageSize()){
- totalPage=(int)Math.ceil(Float.parseFloat(totalCount.toString())/pageSize);
- }
- dqf.setTotalPage(totalPage);
- //前一个
- if (go.equals("previous")){
- if (dqf.getPageNo()>1){
- dqf.setPageNo(dqf.getPageNo()-1);
- }else{
- dqf.setPageNo(1);
- }
- }
- //下一个
- if (go.equals("next")){
- if(dqf.getPageNo()
- dqf.setPageNo(dqf.getPageNo()+1);
- }
- }
- // 最后一页
- if (go.equals("end")){dqf.setPageNo(totalPage);}
- // 第一页
- if (go.equals("frist")){dqf.setPageNo(1);}
- //直接跳页
- if(go.equals("gotoPage")){
- if (dqf.getPageNo()<=1){dqf.setPageNo(1);}
- if (dqf.getPageNo()>=totalPage){dqf.setPageNo(totalPage);}
- }
- List testList=ds.listByConditions(detachedCriteria,dqf.getPageNo(),pageSize);
- request.setAttribute("testList", testList);
- request.setAttribute( "DrugQueryForm", dqf );
- return mapping.findForward( "list" );
- }