zoukankan      html  css  js  c++  java
  • 实用分页小方法

    1 编辑一个class:包含当前页面、总条数、每页显示的条数的属性和构造方法。

      具体代码如下:

    public class PageUtilServices {
        private int pageSize;//每页显示的条数
        private int recordCount;//总共的条数
        private int currentPage;//当前页面
        //构造方法
        public PageUtilServices(int pageSize, int recordCount, int currentPage) {
            super();
            this.pageSize = pageSize;
            this.recordCount = recordCount;
            this.currentPage = currentPage;
        }
        public PageUtilServices() {
            super();
        }
          
            //总页数
            public int getPageCount() {
                int size = recordCount/pageSize;//总条数/每页显示的条数=总页数
                int mod = recordCount % pageSize;//最后一页的条数
                if(mod != 0)
                    size++;
                return recordCount == 0 ? 1 : size;
            }
            //当前页的起始索引为0
            public int getFromIndex() {
                return (currentPage-1) * pageSize;
            }
            //当前页应展示的最后索引
            public int getToIndex() {
                return  Math.min(recordCount, currentPage * pageSize);
            }
           
            public int getCurrentPage() {
                return currentPage;
            }
            public void setCurrentPage(int currentPage) {
               
                this.currentPage = currentPage;
            }
            public int getPageSize() {
                return pageSize;
            }
            public void setPageSize(int pageSize) {
                this.pageSize = pageSize;
            }
            public int getRecordCount() {
                return recordCount;
            }
            public void setRecordCount(int recordCount) {
                this.recordCount = recordCount;
            }
    }

    2.在jsp内实例化该class,并调用相关属性和方法。具体代码如下:

      
         <% BookInfoDAO  dao=new BookInfoDAO();
           SimpleDateFormat sdf=new  SimpleDateFormat("yyyy-MM-dd");
           List<Book> books=dao.getAllBook();
           
           
           String pageStr = request.getParameter("page");
          int  current_size=10;
          int currentPage = 1;
          if (pageStr==null){  
              currentPage = 1;
          }else if(Integer.parseInt(pageStr)<=0){
              currentPage = 1;
          }else if(Integer.parseInt(pageStr)>books.size()/current_size){
              currentPage =books.size()/current_size+1;
          }else{
              currentPage=Integer.parseInt(pageStr);
          }
          PageUtilServices pUtil = new PageUtilServices(current_size, books.size(), currentPage);
          currentPage = pUtil.getCurrentPage();    %>
        <table border="1px">
           <tr><td>bookId</td>
               <td>Name</td>
               <td>author</td>
               <td>price</td>
               <td>date</td>
              
               <td>修改</td>
               <td>删除</td>
          </tr>
          <%for(int i = pUtil.getFromIndex(); i < pUtil.getToIndex();i++){ %>
          <tr><td><%=books.get(i).getBookId()%></td>
              <td><%=books.get(i).getName() %></td>
              <td><%=books.get(i).getAuthor() %></td>
              <td><%=books.get(i).getPrice() %></td>
              <td><%=sdf.format(books.get(i).getDate()) %></td>
          
              <td><a href="servlet/do_upDateBookServlet?id=<%=books.get(i).getBookId() %>">修改</a></td>
              <td><a href="servlet/do_delBookServlet?id=<%=books.get(i).getBookId() %>">删除</a></td>
            
                 
          </tr>
      <%}%>
      <tr><td bgcolor="#eeeeee" colspan=13 align="center">
                        记录总数<%=pUtil.getRecordCount()%>条 当前页/总页数<%=currentPage%>
                        /<%=pUtil.getPageCount()%> 每页显示<%=pUtil.getPageSize()%><a href="bookList.jsp?page=1">首页</a>
                        <a href="bookList.jsp?page=<%=(currentPage - 1)%>">上页</a>
                        <a href="bookList.jsp?page=<%=(currentPage + 1)%>">下页</a>
                        <a href="bookList.jsp?page=<%=pUtil.getPageCount()%>">末页</a>
                        </td></tr>
        </table>

    红线部分表示该class的具体使用地方。页面效果:

  • 相关阅读:
    vray学习笔记(5)-学习资料
    vray学习笔记(4)混合材质是个什么东西
    vray学习笔记(3)-多维子材质是个什么东西
    vray学习笔记(2)vray工作流程
    vray学习笔记(1)vray介绍
    怎么让一个东西看起来比较亮?
    怎么给一个贴图创建透明通道
    BMP是可以保存alpha通道的。
    逆向分析底纹
    关于photoshop处理图片的自动化
  • 原文地址:https://www.cnblogs.com/wei1228565493/p/4131106.html
Copyright © 2011-2022 走看看