//PageCt.java 分页的类 /* *** @version *********** *** Created on 2001年6月25日, 下午14:41 ************************************** */ package vod; import java.sql.*; import java.util.*; public class PageCt { private long l_start; //开始纪录 private long l_end; //结束纪录 private long l_curpage; //当前页数 private long l_totalnum;//总记录数 private int int_num=5; //每页10条 private long l_totalpage; //总的页数 public void Init(long currentpage,long totalnum) { l_curpage = currentpage; l_totalnum = totalnum; if (currentpage>=0) { if (currentpage>=(long)Math.ceil((double)l_totalnum/(double)int_num)) l_curpage = (long)Math.floor((double)l_totalnum/(double)int_num); else l_curpage = currentpage; } else { l_curpage = 0; } l_start = l_curpage * int_num; l_end = l_start + int_num; if (l_end > l_totalnum) l_end = l_totalnum; l_totalpage = (long)Math.ceil((double)l_totalnum/(double)int_num); } public long getCurpage() { return l_curpage; } public long getPrepage() { if (l_curpage-1>=0) { return l_curpage-1; } else { return 0; } } public long getNextpage() { if (l_curpage+1<=l_totalpage) { return l_curpage+1; } else { return l_totalpage; } } public long getTotalnum() { return l_totalnum; } public long getTotalpage() { return l_totalpage; } public long getStart() { return l_start; } public long getEnd() { return l_end; } }; =============================================== //调用例子 <% /* *** @author 马毅 *********** *** @version *********** *** Created on 2001年6月12日, 下午17:13 ************************************** */ <%@ page import="java.sql.*"%> <%@ page import="java.lang.*"%> <%@ page contentType="text/html;charset=gb2312" %> <jsp:useBean id="PageCount" scope="page" class="kstest.PageCt" /> <jsp:useBean id="sqlbean" scope="page" class="vod.sql_data" /> <html> <head> <TITLE>测试</TITLE> <STYLE> body,table{font-size:9pt} A:link { COLOR: #000084; TEXT-DECORATION: none } A:visited { COLOR: #000084; TEXT-DECORATION: none } A:hover { COLOR: black; TEXT-DECORATION: underline } .ourfont { FONT-SIZE: 9pt } </STYLE> </head> <body bgcolor=#eff3ff> <center> <font color=#000084><h3>Test for Test</h3></font> <hr width=600 color=#b5dbff> <br> <% ResultSet rs0 = sqlbean.executeQuery("select count(*) from UserList ); rs0.next(); long data_num=rs0.getLong(1); long Current_Page = 0; String currentpage=(String)request.getParameter("currentpage"); if (currentpage != null && !currentpage.equals("")) { Current_Page = Integer.parseInt(request.getParameter("currentpage")); } String Query_Page=(String)request.getParameter("Query_Page"); if (Query_Page!=null && !Query_Page.equals("")) { Current_Page = Integer.parseInt(request.getParameter("Query_Page"))-1; } PageCt.Init(Current_Page,data_num); long l_start = PageCt.getStart(); long l_end = PageCt.getEnd(); //查询记录 ResultSet rs = sqlbean.executeQuery("select * from UserList " ); long i=0; while((i<l_start) && rs.next()) { i++; } //输出查询结果 long j=0; while(rs.next() && (i<l_end)) { j=i+1; String col2 = rs.getString(2); String col3 = rs.getString(3); String col4 = rs.getString(4); String col5 = rs.getString(5); String col6 = rs.getString(6); String col7 = rs.getString(7); String col8 = rs.getString(8); //打印所显示的数据 out.println("<table border=0 width=600>"); out.println("<tr><td colspan=2><font color=#000084>" + j + "、"+(col2==null?"":col2)+"</font></td></tr><tr><td colspan=2>答案:"+(col3==null?"":col3)+"</td></tr>"); out.println("<tr><td> 选项1:"+(col4==null?"":col4)+"</td><td> 选项2:"+(col5==null?"":col5)+"</td></tr>"); out.println("<tr><td> 选项3:"+(col6==null?"":col6)+"</td><td> 选项4:"+(col7==null?"":col7)+"</td></tr>"); if (col8!=null && !col8.equals("")) { out.println("<tr><td colspan=2>备注:"+col8+"</td></tr>"); } out.println("</table><br>"); i++; } %> <table width=600> <tr bgcolor=#b5dbff> <form method=GET action=index.jsp> <td width=80 align=center valign=bottom>共 <%=PageCt.getTotalnum()%> 条</td> <td width=80 align=center valign=bottom><%=PageCt.getCurpage()+1%>/<%=PageCt.getTotalpage()%> 页</td> <td width=120 align=center>查看第 <input type=text name=Query_Page size=3> 页</td> <td width=50 align=center valign=bottom><a href=index.jsp?currentpage=<%=PageCt.getPrepage()%>>上页</a></td> <td width=50 align=center valign=bottom><a href=index.jsp?currentpage=<%=PageCt.getNextpage()%>>下页</a> </td> </tr> </table> <br><br><br> <table cellspacing=20> <tr> <td>问题包含<input type=text name=question_str size=10 value=<% if (question_str != null) out.println(question_str); %> ></td> <td>答案包含<input type=text name=answer_str size=10 value=<% if (answer_str != null) out.println(answer_str); %> ></td> <td>选项包含<input type=text name=sel_str size=10 value=<% if (sel != null) out.println(sel); %> ></td> </tr> <tr> <td colspan=3 align=center><input type=submit value=查询></td> </tr> </form> </table> <br><br> <a href="insert.jsp">添加</a> <center> </body> </html>  
|