zoukankan      html  css  js  c++  java
  • (十六)分页

    页面分页信息分析

     

    上图中,发现分页需要的信息有:当前页号,总共页数,上一页,下一页,附带一个数据列表。

    由于一般分页是在列表页,所以上面的信息中,数据列表对象是已经有了的;而且上一页、下一页这个只是当前页的数量的加减,所以现在只需要能获取到当前页号,总共页数就可以。也就是说从Action中查询完数据后,需要返回一个这样的对象,它至少包括了:当前页号、总页数、数据列表(具体数据对象不明)。

    再分析;总页数是怎么出来的?应该是要有每页最多显示多少条,然后总共的记录是多少;才能计算出总页数;即使前端页面不显示,但是我们后台计算也是需要总记录数和每页大小才能计算出总页数。这样对象中也要包括这2个属性。

    页面对象(当前页号,总页数,数据列表,总记录数,每页大小)

    设计分页对象

    根据上面的分析;可以写出一个页面对象,内容包括了:当前页号,总页数,数据列表,总记录数,每页大小。

    这个类主要目的是:在数据库层查询数据后,应该将查询到的列表封装给页面对象,并且根据从action中传递的页面大小和当前页,计算出在页面上所需要的属性(当前页、总页数、数据列表),然后再将这个页面对象返回给jsp页面使用。所以设计一个可以实现这个操作的类PageResult:

     

    实现分页

    1、  在baseDaoImpl中应该实现一个带分页功能的查询;

    2、  由于分页信息在列表都需要使用到,所以可以将在jsp页面中需要使用到的分页对象PageResult和分页页号pageNo、页大小pageSize放置baseAction中。

    3、  业务Action中调用分页的方法;

    4、  Jsp页面中对分页对象进行解析。

    抽取前端分页代码

    创建pageNavigator.jsp到项目的common目录下;页面内容如下:

     

    在一般的列表中只要引入 <jsp:include page="/common/pageNavigator.jsp"/>

  • 相关阅读:
    搭建SpringCloud之注册中心Eureka
    学习角色管理模块错误总结---基于SpringMVC框架
    【转】Eclipse 单步调试
    [转]MyBatis的foreach语句详解
    解决pom.xml文件 ---- web.xml is missing and <failOnMissingWebXml> is set to true
    解决Dynamic Web Module 3.0 Requires Java 1.6 or newer
    用maven在eclipse用spring建javaweb工程(一)
    【转载】Eclipse 断点调试
    学习大神笔记之“MyBatis学习总结(三)”
    学习大神笔记之“MyBatis学习总结(二)”
  • 原文地址:https://www.cnblogs.com/Michael2397/p/5939985.html
Copyright © 2011-2022 走看看