"select * from (select allData.*, rownum as allDataRowNo " +
"from (" + sqlStr + ") allData) " +
"where allDataRowNo>=" + getStartRowNo() + " and allDataRowNo<=" + getEndRowNo();
"from (" + sqlStr + ") allData) " +
"where allDataRowNo>=" + getStartRowNo() + " and allDataRowNo<=" + getEndRowNo();
<%@ page info="database handle" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>
<%@ page import="javax.sql.*" %>
<%@ page import="javax.servlet.*" %>
<%@ page import="javax.naming.*" %>
<%
Connection sqlCon;
Statement sqlStmt;
ResultSet sqlRst;
String strCon;
String strSQL;
int intPageSize;
int intRowCount;
int intPageCount;
int intPage;
String strPage;
int i;
intPageSize=15;
strPage=request.getParameter("page");
if (strPage==null)
{intPage=1;}
else
{intPage=java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage=1;
}
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");
strCon = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=aba-edrp";
sqlCon=DriverManager.getConnection(strCon,"sa","");
sqlStmt=sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,
java.sql.ResultSet.CONCUR_READ_ONLY);
strSQL="select * from cust";
sqlRst=sqlStmt.executeQuery(strSQL);
sqlRst.last();
intRowCount=sqlRst.getRow();
intPageCount=(intRowCount+intPageSize-1)/intPageSize;
if(intPage>intPageCount)intPage=intPageCount;
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>翻页程序演示</title>
</head>
<p align=center>翻页程序演示</p>
<body>
<table border="0" width="90%" cellpadding="0" cellspacing="0" height="900">
<tr>
<td width="80%" height="165" valign="top">
<table border="0" width="100%" cellpadding="0" cellspacing="1" height="81">
<tr>
<td width="134" height="18" bgcolor="#CCCCCC">编号1</td>
<td width="136" height="18" bgcolor="#CCCCCC">编号2</td>
<td width="135" height="18" bgcolor="#CCCCCC">编号3</td>
<td width="134" height="18" bgcolor="#CCCCCC">编号4</td>
<td width="139" height="18" bgcolor="#CCCCCC">编号5</td>
</tr>
<%
if(intPageCount>0){
sqlRst.absolute((intPage-1)*intPageSize+1);
i=0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<tr bgcolor="f2f2e6">
<td width="134" height="18" ><%=sqlRst.getString(1)%></td>
<td width="136" height="18" ><%=sqlRst.getString(2)%></td>
<td width="135" height="18" ><%=sqlRst.getString(3)%></td>
<td width="134" height="18" ><%=sqlRst.getString(4)%></td>
<td width="139" height="18" ><%=sqlRst.getString(5)%></td>
</tr>
<%
sqlRst.next();
i++;
}
}
%>
</table>
<table border="0" width="100%" cellpadding="0" cellspacing="0" height="52">
<tr>
<form action="myjsp_pageview.jsp" method="get">
<td height="52" bgcolor="#99ffcc" align="right">
<%
if(intPage!=1)
{
out.println("<A HREF=myjsp_pageview.jsp?page=1>第一页</A>");
out.println("<A HREF=myjsp_pageview.jsp?page="+(intPage-1)+">上一页</A>");
}
if(intPage!=intPageCount)
{
out.println("<A HREF=myjsp_pageview.jsp?page="+(intPage+1)+">下一页</A>");
out.println("<A HREF=myjsp_pageview.jsp?page="+(intPageCount)+">最后一页</A>");
}
%> 输入页数<input type="text" size="3" name="page">
页数:<font color="#FF0000"><%=intPage%>/<%=intPageCount%></font>
</form>
</tr>
</table>
</body>
</html>
<%
sqlRst.close();
sqlStmt.close();
sqlCon.close();
%>