一个用JSP实现的分页的类及调用方法

**************************************
*/
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> & nbsp; & nbsp;选项1: " +(col4==null? "" :col4)+ " / td><td> & nbsp; & nbsp;选项2: " +(col5==null? "" :col5)+ " / td>< / tr> " );
out.println(
" <tr><td> & nbsp; & nbsp;选项3: " +(col6==null? "" :col6)+ " / td><td> & nbsp; & nbsp;选项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> 

一个用JSP实现的分页的类及调用方法
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值