Instance Javabean connectée à MySQL + pagination simple
Auteur:Eve Cole
Date de mise à jour:2009-07-03 16:55:35
<%@ page contentType="text/html;charset=GBK" langage="java" import="java.sql.*,java.util.*"%>
<html>
<tête>
<title>学习分页</title>
<link href="../css.css" rel="stylesheet" type="text/css">
</tête>
<corps>
<jsp:useBean id="mapage" class="ckstudio.db.mysqlconn" scope="page"/>
<largeur de la table="1024"><tr>
<td>rs.getString(user_id)|</td>
<td>rs.getString(nom_utilisateur)|</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(Chaîne cint)
{
essayer {
entier n;
n= Integer.parseInt(cint);
retourner n ;
}
catch (NumberFormatException e) {
renvoie 0 ;
}
}
%>
<%
int Taille de la page = 5 ; //设置每页显示的记录条数
int ShowPage=1; //设置想要显示的页数
int Nombre de lignes = 0 ; //ResultSet的记录数目 初始值
int Nombre de pages = 0 ; //ResultSet n'a pas de résultat
int duoyu=0; //设置分页最后一页的记录数 初始值
//La taille de la page est inférieure à celle de la taille de la page.
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=Nombre de lignes % Taille de la page ;
si(duoyu==0)
{
PageCount=Nombre de lignes/Taille de la page ;
}
autre{
PageCount=(RowCount-duoyu)/PageSize;
Nombre de pages++ ;
}
// else里面 如果除不尽 侧页数为商加一;
//计算显示的页数
Chaîne ToPage = request.getParameter("ToPage");
si(VersPage==""){VersPage="1";}
ShowPage = Cint(VersPage); //取得指定显示的分页页数
//下面的si语句将判断用户输入的页数是否正确
si (Afficher la page > Nombre de pages)
{ //判断指定页数是否大于总页数, 否则设置显示最后一页
ShowPage = Nombre de pages ;
}
sinon si (Afficher la Page <= 0)
{ //若指定页数小于0, 则设置显示第一页的记录
AfficherPage = 1 ;
}
}
rs.absolute((ShowPage - 1) * PageSize+1); //计算欲显示页的第一个记录位置
%>
<!--下面是分页-->
<%
//Pour la taille de la pagePageSizeet pour la taille de la page
entier je = 1 ;
rs.previous();
//Chaîne nom_utilisateur,e-mail_utilisateur,ajout_utilisateur ;
while(rs.next()&i<=PageSize)
{
je++;
//user_id=rs.getInt("user_id");
//nom_utilisateur=rs.getString("nom_utilisateur");
//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>
<tableau>
<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>
<%}
autre{
%>
?
<%}if(AfficherPage>1) {%>
<a href="page.jsp?ToPage=<%=(ShowPage-1)%>">上一页</a>
<%}
autre {
%>
上一页
<%}
si(AfficherPage<PageCount) {
%>
<a href="page.jsp?ToPage=<%=(ShowPage+1)%>">下一页</a>
<%}
autre {
%>
下一页
<%}if(ShowPage!=PageCount){%>
<a href="page.jsp?ToPage=<%=PageCount%>">末页</a>
<%}
sinon{%>
末页
<%}%>
</font></p></form>
</table>
<%
rs.close();
%>