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

2016-01-29 12:31 86 1 收藏

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

【 tulaoshi.com - Java 】

**************************************
*/
package vod;
import java.sql.*;
import java.util.*;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

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; //总的页数

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

public void Init(long currentpage,long totalnum)
{
l_curpage = currentpage;
l_totalnum = totalnum;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

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;
}

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/java/)

};
===============================================
//调用例子
<%
/*
*** @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>  选项1:"+(col4==null?"":col4)+"</td><td>  选项2:"+(col5==null?"":col5)+"</td></tr>");
out.println

来源:http://www.tulaoshi.com/n/20160129/1486456.html

延伸阅读
标签: Web开发
从开始学习到使用ASP到现在也写了不少程序了,最令人头痛的是写数据分页,每次都是由于几个变量名或几个参数的不同,因而需要每次都写哪一段冗长而又繁杂的分页代码,代码长了使得程序的可读性变差,容易出差,调试半天也找不出错在哪里,所以慢慢的我开始使用一些网上的提供的分页函数或分页类。的确省事不少,但是通常的函数和类的做法都是就...
标签: Web开发
使用这个存储过程可以实现分页的,新手可以看看哦! create proc proPage(@pageid int ,@pagesize int) as begin if (@pageid=1) begin  set rowcount @pagesize  select * from test order by id end else begin  declare @no1 int  declare @num int  sel...
标签: PHP
  -------------------------------论坛-------------------------- 数据表 create table guest(id int not null auto_increment,primary key(id),title varchar(50),email varchar(30),homepage varchar(30),name varchar(30),text text,relay int,r_time date) create table relay(id int not null auto_increment,primary &nb...
一个简单的链表模版类的实现 作者:Smoke 源代码下载     这是翻阅 《数据结构、算法与应用—— C++语言描述》 以及在网上得到的一些资料后写出来的。起因是在项目中要用到一个链表,但我做一个简单的链表在C++中用的时候跟C差别很多,比如赋值运算(编...
标签: ASP
我们继续接上期 在页面里通过调用ShowPage()的方法显示出来,ShowPage可以在GetRS以后的任意位置调用,也可以调用多次 Public Sub ShowPage() Dim str_tmp int_totalRecord=XD_RS.RecordCount If int_totalRecord<=0 Then   str_error=str_error & "总记录数为零,请输入数据"   Call ShowError() End If If int_totalRec...

经验教程

345

收藏

24
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部