加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 教程 > 正文

简析JSP分页教程

发布时间:2023-07-20 14:37:15 所属栏目:教程 来源:
导读:JSP分页教程

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />

<title>设计家园jsp教程</title>

<%

//连接字
JSP分页教程
 
<html xmlns="http://www.w3.org/1999/xhtml">
 
<head>
 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
 
<title>设计家园jsp教程</title>
 
<%
 
//连接字符串
 
Class.forName("org.gjt.mm.mysql.Driver");
 
Connection connection=DriverManager.getConnection("jdbc:mysql://localhost:3306/sms","sms","sms");
 
Statement statement = connection.createStatement();
 
LinuxMySql lm = new LinuxMySql();
 
//每页显示记录数
 
int PageSize = 8;
 
int StartRow = 0; //开始显示记录的编号
 
int PageNo=0;//需要显示的页数
 
int CounterStart=0;//每页页码的初始值
 
int CounterEnd=0;//显示页码的最大值
 
int RecordCount=0;//总记录数;
 
int MaxPage=0;//总页数
 
int PrevStart=0;//前一页
 
int NextPage=0;//下一页
 
int LastRec=0;
 
int LastStartRecord=0;//最后一页开始显示记录的编号
 
//获取需要显示的页数,由用户提交
 
if(request.getParameter("PageNo")==null){ //如果为空,则表示第1页
 
if(StartRow == 0){
 
PageNo = StartRow + 1; //设定为1
 
}
 
}else{
 
PageNo = Integer.parseInt(request.getParameter("PageNo")); //获得用户提交的页数
 
StartRow = (PageNo - 1) * PageSize; //获得开始显示的记录编号
 
}
 
//因为显示页码的数量是动态变化的,假如总共有一百页,则不可能同时显示100个链接。而是根据当前的页数显示
 
//一定数量的页面链接
 
//设置显示页码的初始值!!
 
if(PageNo % PageSize == 0){
 
CounterStart = PageNo - (PageSize - 1);
 
}else{
 
CounterStart = PageNo - (PageNo % PageSize) + 1;
 
}
 
CounterEnd = CounterStart + (PageSize - 1);
 
%>
 
<html>
 
<head>
 
<title>分页显示记录</title>
 
<link rel="stylesheet" href="style.css" type="text/css">
 
</head>
 
<%
 
//获取总记录数
 
ResultSet rs = statement.executeQuery("select count(*) from sm_asend" );
 
rs.next();
 
RecordCount = rs.getInt(1);
 
rs = statement.executeQuery("SELECT sm_da,sm_st,sm_ud FROM sm_asend ORDER BY sm_no DESC LIMIT "
 
+StartRow+", "+PageSize);
 
//获取总页数
 
MaxPage = RecordCount % PageSize;
 
if(RecordCount % PageSize == 0){
 
MaxPage = RecordCount / PageSize;
 
}else{
 
MaxPage = RecordCount/PageSize+1;
 
}
 
%>
 
<body class="UsePageBg">
 
<table width="100%" border="0" class="InternalHeader">
 
<tr>
 
<td width="24%"><font size=4>分页显示记录</font></td>
 
<td width="76%">
 
<font size=4><%="总共"+RecordCount+"条记录 - 当前页:"+PageNo+"/"+MaxPage %></font>
 
</td>
 
</tr>
 
</table>
 
<br>
 
<table width="100%" border="0" class="NormalTableTwo">
 
<tr>
 
<td class="InternalHeader" >对方电话</td>
 
<td class="InternalHeader" >发送日期</td>
 
<td class="InternalHeader" >发送内容</td>
 
</tr>
 
<%
 
int i = 1;
 
while (rs.next()) {
 
%>
 
<tr>
 
<td class="NormalFieldTwo" ><%=lm.split86(rs.getString(1))%></td>
 
<td class="NormalFieldTwo" ><%=lm.dateLog(rs.getString(2))%></td>
 
<td class="NormalFieldTwo" ><%=lm.unicode2String(rs.getString(3))%></td>
 
</tr>
 
<%
 
i++;
 
}%>
 
</table>
 
<br>
 
<table width="100%" border="0" class="InternalHeader">
 
<tr>
 
<td><div align="center">
 
<%
 
out.print("<font size=4>");
 
//显示第一页或者前一页的链接
 
//如果当前页不是第1页,则显示第一页和前一页的链接
 
if(PageNo != 1){
 
PrevStart = PageNo - 1;
 
out.print("<a href=fenye.jsp?PageNo=1>第一页 </a>: ");
 
out.print("<a href=fenye.jsp?PageNo="+PrevStart+">前一页</a>");
 
}
 
out.print("[");
 
//打印需要显示的页码
 
for(int c=CounterStart;c<=CounterEnd;c++){
 
if(c <MaxPage){
 
if(c == PageNo){
 
if(c %PageSize == 0){
 
out.print(c);
 
}else{
 
out.print(c+" ,");
 
}
 
}else if(c % PageSize == 0){
 
out.print("<a href=fenye.jsp?PageNo="+c+">"+c+"</a>");
 
}else{
 
out.print("<a href=fenye.jsp?PageNo="+c+">"+c+"</a> ,");
 
}
 
}else{
 
if(PageNo == MaxPage){
 
out.print(c);
 
break;
 
}else{
 
out.print("<a href=fenye.jsp?PageNo="+c+">"+c+"</a>");
 
break;
 
}
 
}
 
}
 
out.print("]");;
 
if(PageNo < MaxPage){ //如果当前页不是最后一页,则显示下一页链接
 
NextPage = PageNo + 1;
 
out.print("<a href=fenye.jsp?PageNo="+NextPage+">下一页</a>");
 
}
 
//同时如果当前页不是最后一页,要显示最后一页的链接
 
if(PageNo < MaxPage){
 
LastRec = RecordCount % PageSize;
 
if(LastRec == 0){
 
LastStartRecord = RecordCount - PageSize;
 
}
 
else{
 
LastStartRecord = RecordCount - LastRec;
 
}
 
out.print(":");
 
out.print("<a href=fenye.jsp?PageNo="+MaxPage+">最后一页</a>");
 
}
 
out.print("</font>");
 
%>
 
</div>
 
</td>
 
</tr>
 
</table>
 
<%
 
rs.close();
 
statement.close();
 
connection.close();
 
%>
 
</body>
 
</html>
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!