zoukankan      html  css  js  c++  java
  • 分页显示

    效果:首页  上一页  当前页  下一页  尾页

    分页功能的实现:

      物理分页:一次只查n条记录,点击下一页,再去查后n条,使用sql语句进行控制的分页。

        缺点:经常需要和数据库交互;

        优点:数据量特别大,不会导致内存的溢出;

      逻辑分页:一次性将所有数据全部都查询出来,根据需要进行截取,List集合进行控制subList();

        缺点:数据量如果特别大,容易导致内存溢出;

        优点:与数据库交互次数少;

    不同的数据库对分页的语句也是不一样的:

      oracle:使用sql嵌套;

      sqlserver:使用top关键字;

      mysql:使用limit关键字:

        eg:select * from table where...group by...having...order by...limit begin,pageSize;

        分析:begin:从第几条数据开始查询;pageSize:查询多少条数据

    currPage begin pagesize
    1 0 10
    2 10 10
    3 20 10

    currPage:表示当前页码  

    可以通过左方表格推算出各个参数之间的关系:

      begin =( currPage - 1 ) * pagesize

      参数的传递:

        前台--->后台:currPage

        后台--->前台:currPage【当前页】,totalPage【总页数】,totalCount【总记录数】,pageSize【每页显示条数】,List【显示数据集合】

          后台到前台传递的数据使用javabean来封装参数方便传递:

    package pojo;
    
    import java.util.List;
    
    public class PageBean {
        private int currPage;//当前页
        private int totalCount;//总记录数
        private int totalPage;//总页数
        private int pageSize;//每页显示数
        private List<Product> productList;//显示数据集合
        public int getCurrPage() {
            return currPage;
        }
        public void setCurrPage(int currPage) {
            this.currPage = currPage;
        }
        public int getTotalCount() {
            return totalCount;
        }
        public void setTotalCount(int totalCount) {
            this.totalCount = totalCount;
        }
        public int getTotalPage() {
            return totalPage;
        }
        public void setTotalPage(int totalPage) {
            this.totalPage = totalPage;
        }
        public int getPageSize() {
            return pageSize;
        }
        public void setPageSize(int pageSize) {
            this.pageSize = pageSize;
        }
        public List<Product> getProductList() {
            return productList;
        }
        public void setProductList(List<Product> productList) {
            this.productList = productList;
        }
        
    }
    View Code

    通过request域将该数据传递到jsp页面显示:

    <c:if test="${pageBean.currPage != 1}">
        <a href = "${ pageContext.request.contextPath }/SearchByPage?currPage=1">首页</a>
        <a href = "${ pageContext.request.contextPath }/SearchByPage?currPage=${pageBean.currPage - 1}">上一页</a>
    </c:if>
        &nbsp;&nbsp;&nbsp;${ pageBean.currPage }&nbsp;&nbsp;&nbsp;
    <c:if test="${pageBean.currPage != pageBean.totalPage}">
        <a href = "${ pageContext.request.contextPath }/SearchByPage?currPage=${pageBean.currPage + 1}">下一页</a>
        <a href = "${ pageContext.request.contextPath }/SearchByPage?currPage=${pageBean.totalPage}">尾页</a>
    </c:if>
    View Code
  • 相关阅读:
    实验六 进程基础
    实验五 shell脚本编程
    实验四 Linux系统搭建C语言编程环境
    实验三 Linux系统用户管理及VIM配置
    实验二 Linux系统简单文件操作命令
    实验一 Linux系统与应用准备
    实验八 进程间的通信
    实验七 信号
    实验六 进程基础
    实验五 shell脚本编程
  • 原文地址:https://www.cnblogs.com/laodang/p/9510439.html
Copyright © 2011-2022 走看看