<%@ 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();
%>