<%@ page contentType="text/html;charset=GBK" language="java" import="java.sql.*,java.util.*"%> <html> <head> <title>学习分页</title> <link href="../css.css" rel="stylesheet" type="text/css"> </head> <body> <jsp:useBean id="mypage" class="ckstudio.db.mysqlconn" scope="page"/> <table width="1024"><tr> <td>rs.getString(user_id)|</td> <td>rs.getString(user_name)|</td> <td>rs.getString(user_mail)|</td> <td>rs.getString(user_adds)</td> </tr> <br> <tr> <td style="hight:8px:width:%25;background-color:red;"> <td style="hight:8px:width:%25;background-color:red;"> <td style="hight:8px:width:%25;background-color:red;"> <td style="hight:8px:width:%25;background-color:red;"> </tr> <%! int Cint(String cint) { try { int n; n= Integer.parseInt(cint); return n; } catch (NumberFormatException e) { return 0; } } %> <% int PageSize=5; //设置每页显示的记录条数 int ShowPage=1; //设置想要显示的页数 int RowCount = 0; //ResultSet的记录数目 初始值 int PageCount = 0; //ResultSet分页后的总页数 初始值 int duoyu=0; //设置分页最后一页的记录数 初始值 //以上是对这些数据的初始化 pagesize可自行设置 String sql="select * from member order by user_id desc"; ResultSet rs=mypage.executeQuery(sql); //建立ResultSet(结果集)对象,并执行SQL语句 %> <%if(rs.next()) { rs.last(); //将指标移至最后一笔记录 RowCount=rs.getRow(); duoyu=RowCount % PageSize; if(duoyu==0) { PageCount=RowCount/PageSize; } else{ PageCount=(RowCount-duoyu)/PageSize; PageCount++; } // else里面 如果除不尽 侧页数为商加一; //计算显示的页数 String ToPage = request.getParameter("ToPage"); if(ToPage==""){ToPage="1";} ShowPage = Cint(ToPage); //取得指定显示的分页页数 //下面的if语句将判断用户输入的页数是否正确 if(ShowPage > PageCount) { //判断指定页数是否大于总页数, 否则设置显示最后一页 ShowPage = PageCount; } else if(ShowPage <= 0) { //若指定页数小于0, 则设置显示第一页的记录 ShowPage = 1; } } rs.absolute((ShowPage - 1) * PageSize+1); //计算欲显示页的第一个记录位置 %> <!--下面是分页--> <% //利用For循环配合PageSize属性输出一页中的记录 int i=1; rs.previous(); //String user_name,user_email,user_adds; while(rs.next()&i<=PageSize) { i++; //user_id=rs.getInt("user_id"); //user_name=rs.getString("user_name"); //user_mail=rs.getString("user_mail"); //user_adds=rs.getString("user_adds"); %> <tr> <td><%=rs.getString(1)%></td> <td><%=rs.getString(2)%></td> <td><%=rs.getString(3)%></td> <td><%=rs.getString(4)%></td> </tr> <%} %> </table> <table> <br> <br><form aciont="page.jsp"> <tr><td width="1024" height="23"> <p align="right">第<%=ShowPage%>页/共<%=PageCount%>页,<%=RowCount%>个用户 第 <input name="ToPage" type="text" size="2" maxlength="2">页 <input type="submit" value="GO"> <%if(ShowPage!=1){%> <a href="page.jsp?ToPage=1">首页</a> <%} else{ %> 首页 <%}if(ShowPage>1) {%> <a href="page.jsp?ToPage=<%=(ShowPage-1)%>">上一页</a> <%} else { %> 上一页 <%} if(ShowPage<PageCount) { %> <a href="page.jsp?ToPage=<%=(ShowPage+1)%>">下一页</a> <%} else { %> 下一页 <%}if(ShowPage!=PageCount){%> <a href="page.jsp?ToPage=<%=PageCount%>">末页</a> <%} else{%> 末页 <%}%> </font></p></form> </table> <% rs.close(); %>
|