如何将ResultSet分页展示:比如说十条一页,有“上一页”和“下一页”的按钮
来源:互联网 发布:苹果电脑图片浏览软件 编辑:程序博客网 时间:2024/05/01 04:38
JSP数据库操作例程 - 数据分页显示
<%--
作者:何志强[hhzqq@21cn.com]
日期:2000-08-03
版本:1.0
功能:JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle
--%>
<%@ page contentType="text/html;charset=8859_1" %>
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 2;
//取得待显示页码
strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
}
else{//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}
//装载JDBC驱动程序
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
//设置数据库连接字符串
strCon = "jdbc:oracle:thin:@linux:1521:ora4cweb";
//连接数据库
sqlCon = java.sql.DriverManager.getConnection(strCon,"hzq","hzq");
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java
.sql.ResultSet.CONCUR_READ_ONLY);
//准备SQL语句
strSQL = "select name,age from test";
//执行SQL语句并获取结果集
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>JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle</title>
</head>
<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<%
if(intPageCount>0){
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage-1) * intPageSize + 1);
//显示数据
i = 0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<tr>
<td><%=sqlRst.getString(1)%></td>
<td><%=sqlRst.getString(2)%></td>
</tr>
<%
sqlRst.next();
i++;
}}
%>
</table>
第<%=intPage%>页 共<%=intPageCount%>页 <%if(intPage<intPag
eCount){%><a href="jdbc20-oracle.jsp?page=<%=intPage+1%>">下一页</a><%}%> &n
bsp;<%if(intPage>1){%><a href="jdbc20-oracle.jsp?page=<%=intPage-1%>">上一页</a><
%}%>
</body>
</html>
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
<%--
作者:何志强[hhzqq@21cn.com]
日期:2000-08-03
版本:1.0
功能:JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle
--%>
<%@ page contentType="text/html;charset=8859_1" %>
<%
//变量声明
java.sql.Connection sqlCon; //数据库连接对象
java.sql.Statement sqlStmt; //SQL语句对象
java.sql.ResultSet sqlRst; //结果集对象
java.lang.String strCon; //数据库连接字符串
java.lang.String strSQL; //SQL语句
int intPageSize; //一页显示的记录数
int intRowCount; //记录总数
int intPageCount; //总页数
int intPage; //待显示页码
java.lang.String strPage;
int i;
//设置一页显示的记录数
intPageSize = 2;
//取得待显示页码
strPage = request.getParameter("page");
if(strPage==null){//表明在QueryString中没有page这一个参数,此时显示第一页数据
intPage = 1;
}
else{//将字符串转换成整型
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}
//装载JDBC驱动程序
java.sql.DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
//设置数据库连接字符串
strCon = "jdbc:oracle:thin:@linux:1521:ora4cweb";
//连接数据库
sqlCon = java.sql.DriverManager.getConnection(strCon,"hzq","hzq");
//创建一个可以滚动的只读的SQL语句对象
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java
.sql.ResultSet.CONCUR_READ_ONLY);
//准备SQL语句
strSQL = "select name,age from test";
//执行SQL语句并获取结果集
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>JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Oracle</title>
</head>
<body>
<table border="1" cellspacing="0" cellpadding="0">
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<%
if(intPageCount>0){
//将记录指针定位到待显示页的第一条记录上
sqlRst.absolute((intPage-1) * intPageSize + 1);
//显示数据
i = 0;
while(i<intPageSize && !sqlRst.isAfterLast()){
%>
<tr>
<td><%=sqlRst.getString(1)%></td>
<td><%=sqlRst.getString(2)%></td>
</tr>
<%
sqlRst.next();
i++;
}}
%>
</table>
第<%=intPage%>页 共<%=intPageCount%>页 <%if(intPage<intPag
eCount){%><a href="jdbc20-oracle.jsp?page=<%=intPage+1%>">下一页</a><%}%> &n
bsp;<%if(intPage>1){%><a href="jdbc20-oracle.jsp?page=<%=intPage-1%>">上一页</a><
%}%>
</body>
</html>
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>
- 如何将ResultSet分页展示:比如说十条一页,有“上一页”和“下一页”的按钮
- 用存储过程实现分页,除了上一页,下一页,第一页,和末页外还要有go按钮,以及go到那里的文本框。
- asp.net显示第一页、上一页、下一页和最后一页的分页显示数据表的数据
- 分页(上一页,下一页)
- dede 分页 上一页 下一页
- 万能分页显示上一页下一页
- servlet+mysql分页(上一页,下一页)
- 关于分页标签,上一页和下一页不可点击。
- wordpress中添加上一页、下一页按钮的方法
- 分页实现-----首页、上一页、下一页、最后一页
- java实现的分页方法(上一页下一页)
- js上一页/下一页真分页的页码生成
- wordpress post 的上一页 下一页
- 简单分页(只有第一页、上一页、下一页、末一页)
- 关于MVC中使用JqGrid插件分页时无法显示分页按钮(首页、上一页、下一页、最后一页)的原因
- js上一页,下一页
- 上一页下一页js
- php mysql 上一页 下一页 分页代码片段
- Jquery的$.each()方法
- C++编程思想第二章课后答案
- iOS UIWindow
- 函数样编程 lisp
- MyEclipse添加jar包问题
- 如何将ResultSet分页展示:比如说十条一页,有“上一页”和“下一页”的按钮
- 数组中最长的区间,满足该区间内的数排序后是连续的。
- iOS: HTTPS 与自签名证书
- int *(*a)[3][4]
- cocos2d-x 数学函数、常用宏粗整理
- iOS使用xib自定义uiview
- 指令 repne scas byte ptr es:[edi]
- Hibernate获取Connection
- androidviews.