從數據庫得到數據就不寫了,直接寫如何進行分頁,爲了方便,把方法和實體類都寫到一個java文件裏面了css
這只是一種簡單的分頁方法,肯能會有比較多的bugjava
這是java裏的構造實體類和方法,數據庫
1 public class PageUtilServices { 2 3 private int pageSize;//每頁顯示的條數 4 private int recordCount;//總共的條數 5 private int currentPage;//當前頁面 6 //構造方法 7 public PageUtilServices(int pageSize, int recordCount, int currentPage) { 8 super(); 9 this.pageSize = pageSize; 10 this.recordCount = recordCount; 11 this.currentPage = currentPage; 12 } 13 public PageUtilServices() { 14 super(); 15 } 16 17 //總頁數 18 public int getPageCount() { 19 int size = recordCount/pageSize;//總條數/每頁顯示的條數=總頁數 20 int mod = recordCount % pageSize;//最後一頁的條數 21 if(mod != 0) 22 size++; 23 return recordCount == 0 ? 1 : size; 24 } 25 //當前頁的起始索引爲0 26 public int getFromIndex() { 27 return (currentPage-1) * pageSize; 28 } 29 //當前頁應展現的最後索引 30 public int getToIndex() { 31 return Math.min(recordCount, currentPage * pageSize); 32 } 33 34 public int getCurrentPage() { 35 return currentPage; 36 } 37 public void setCurrentPage(int currentPage) { 38 39 this.currentPage = currentPage; 40 } 41 public int getPageSize() { 42 return pageSize; 43 } 44 public void setPageSize(int pageSize) { 45 this.pageSize = pageSize; 46 } 47 public int getRecordCount() { 48 return recordCount; 49 } 50 public void setRecordCount(int recordCount) { 51 this.recordCount = recordCount; 52 } 53 }
這是jsp界面jsp
<style type="text/css"> table{ margin: 0 auto; border-collapse:collapse; border-color: #666; } .lowstore{ color:red; } td{ text-align: center; } </style> </head> <body> <table border="1px"> <% BookInfoDao dao = new BookInfoDao(); List<Books> bookList = dao.showBooks(); String pageStr = request.getParameter("page"); int currentPage = 1; if (pageStr==null){ currentPage = 1; }else if(Integer.parseInt(pageStr)<=0){ currentPage = 1; }else if(Integer.parseInt(pageStr)>bookList.size()/3){ currentPage =bookList.size()/3+1; }else{ currentPage=Integer.parseInt(pageStr); } PageUtilServices pUtil = new PageUtilServices(3, bookList.size(), currentPage); currentPage = pUtil.getCurrentPage(); BookInfoDao bd=new BookInfoDao(); //ArrayList<Books> books=bd.showBooks(); if(bookList.isEmpty()==false){ %> <tr bgcolor="#eeeeee" colspan=13 align="center" > <td>編號</td> <td>名稱</td> <td>做者</td> <td>價格</td> <td>發佈日期</td> <td>庫存</td> <td>操做</td> <td>修改</td> <td>入庫</td> <td>出庫</td> <td>評論</td> <td>查看評論</td> <td>購買圖書</td> </tr> <% SimpleDateFormat sf=new SimpleDateFormat("yyyy-MM-dd"); //ArrayList<Books> bookList=bd.showBooks(); %> <a href="addbooks.jsp">添加圖書</a><br/> <a href="searchbook.jsp">查找圖書</a><br/> <a href="userlist.jsp?id=3">查看用戶</a><br/> <a href="login.jsp">返回登陸</a> <% for (int i = pUtil.getFromIndex(); i < pUtil.getToIndex(); i++) { Books book = bookList.get(i); %> <tr class=<%=bookList.get(i).getReserve()<10?"lowstore":""%>> <td><%=bookList.get(i).getBookId() %></td> <td><%=bookList.get(i).getBookName() %></td> <td><%=bookList.get(i).getAuther() %></td> <td><%=bookList.get(i).getPrice() %></td> <td><%=sf.format(bookList.get(i).getBookTime()) %></td> <td><%=bookList.get(i).getReserve() %></td> <td><a href="servlet/do_bookdelServlet?id=<%=bookList.get(i).getBookId() %>">刪除</a></td> <td><a href="servlet/do_updatebookServlet?id=<%=bookList.get(i).getBookId() %>">修改</a></td> <td><a href="servlet/do_inbooksServlet?id=<%=bookList.get(i).getBookId() %>">入庫</a></td> <td><a href="servlet/do_outbooksServlet?id=<%=bookList.get(i).getBookId() %>">出庫</a></td> <td><a href="addcomment.jsp?id=<%=bookList.get(i).getBookId() %>">評論</a></td> <td><a href="servlet/do_showcomServlet?id=<%=bookList.get(i).getBookId() %>">查看評論</a></td> <td><a href="servlet/do_sellbookServlet?id=<%=bookList.get(i).getBookId() %>">購買</a></td> </tr> <% } }else{ %> <tr> <td>對不起,沒有圖書收錄,請添加!</td> </tr> <a href="addbooks.jsp">添加</a><br/> <a href="login.jsp">返回登陸</a> <% } %> <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> </body>