请好心的大虾给我个分页代码~
最近快考试了,这几天听的最频繁的词就是分页,但是我不太会写,急用,
请各位吓哥给我个例子,我学习下,!@!!
30分分享!!!~~~~
[解决办法]
<%
int intPageSize;//每页显示记录数变量
int intRowCount;//记录总数
int intPageCount;//总页数
int nowPages;//当前页
int pages;//请求页数
int i,j;
intPageSize=5;//定义每页显示10条记录
intPageCount=1;//总页数
//先给页面变量赋值
sqlname="select count(*) from bill.user_complain_t";
ResultSet rt=stmt.executeQuery(sqlname);
rt.next();
intRowCount=rt.getInt(1);//取得整数保存与intRowCount变量中
intPageCount=(intRowCount+intPageSize-1)/intPageSize;//计算出总页数(记录总数+每页显示的记录-1)/每页显示的记录)
//取得传入的页码参数
if(request.getParameter("pages") == null)
{
pages = 1;
}
else
{
pages = new Integer(request.getParameter("pages")).intValue();
}
if(pages > intPageCount)
{
nowPages = 1;
}
else
{
nowPages = pages;
}
sqlname="select record_id,complain_serial_nbr,complain_code,complain_type,belong_system,belong_big_type,create_staff,to_char(create_time,'YYYY-MM-DD HH24:MI:SS') create_time,is_qgs from bill.user_complain_t order by record_id desc";
ResultSet rs=stmt.executeQuery(sqlname);//执行sql,按照时间先后排序显示
i=(nowPages-1)*intPageSize;
for(j=0;j<i;j++)
rs.next();
%>
<table width="100%" border="1" cellpadding="3" cellspacing="0" bordercolor="#000000" bordercolordark=ffffff>
<tr>
<td align="center" class="tablehead">投诉工单流水编号</td>
<td align="center" class="tablehead">投诉号码(订单编码)</td>
<td align="center" class="tablehead">问题类型</td>
<td align="center" class="tablehead">问题所属系统</td>
<td align="center" class="tablehead">问题归属大类</td>
<td align="center" class="tablehead">创建人</td>
<td align="center" class="tablehead">创建时间</td>
<td align="center" class="tablehead">是否转区业务支撑中心</td>
</tr>
<%-- 设置intPage参数 --%>
<%if(intRowCount==0)
{%>
<tr>
<td COLSPAN=13 align="left"><font color="#CC0033"> 对不起,系统中没有数据!</font>
</td>
</tr>
<%}else{%>
<%-- 显示每页的数据 (根据i的值判断每页的10条记录) --%>
<%
i=0;
while(i<intPageSize && rs.next())
{
String record_id=rs.getString("record_id");
%>
<tr class="cpx12hei">
<td align="center" bgcolor="#FFFFFF"><a href="single_detail_view.jsp?record_id=<%=record_id%>"><%=(rs.getString("complain_serial_nbr"))%></a></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("complain_code"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("complain_type"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("belong_system"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("belong_big_type"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("create_staff"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("create_time"))%></b></td>
<td align="center" bgcolor="#FFFFFF"><b><%=(rs.getString("is_qgs"))%></b></td>
</tr>
<%i++;//通过I循环设置每页的页数
}
}
rs.close();
rt.close();
stmt.close();
conn.close();
%>
</table>
<form name="lzForm" method="POST" action="complain_input_test.jsp" onSubmit="return check_data()">
共<font color=red><%= intRowCount %></font>条记录
第<font color=red><%=nowPages%></font>页/共<font color=red><%=intPageCount%></font>页/每页<font color=red><%=intPageSize%></font>条
<a href="?pages=<%= 1 %>">首页</a>
<% int c_page=0; if (nowPages > 1) { c_page=nowPages-1; %><a href=<%="complain_input_test.jsp?pages="+c_page%>> 上一页</a><%}%>
<%if (nowPages < intPageCount) { c_page=nowPages+1; %><a href=<%="complain_input_test.jsp?pages="+c_page%>>下一页 </a><%}%>
<a href="?pages=<%= intPageCount %>">尾页</a>
跳转到第:<input type="text" id="test" name="pages" size="8"> 页 <span><input type="submit" value="GO"></span>
</form>