当前位置: 首页 > 图文教程 > 网络编程 > JSP > JSP数据库操数据分页显示

JSP
java设计模式之Memento
java设计模式之Facade(外观)
JSP如何与EJB SessionBean通讯
通用上载组件的原理及实现
最佳实践:有状态会话 bean运行结束时应及时被显式删除
jsp预编译工具
利用javabean轻松实现对数据库的连接、查询以及增删改--使用范例
利用javabean轻松实现对数据库的连接、查询以及增删改
Redhat下安装Tomcat
用VisualAge for Java开发企业级bean
WebLogic初步研究
一个实现排列和组合的JavaBean
汉字问题深入谈-- 关于JAVA的中文问题
什么是 Enterprise JavaBeans 组件?(三)
Java的内存泄漏
JSP中SQL数据库编程技术
JSP中的字符替换函数 str_replace()实现
JSP开发工具的选择
Jsp分页实例代码
JSP标签快速检索

JSP数据库操数据分页显示


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 71 ::
收藏到网摘: n/a


<%@ 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<intPageCount){%><a href="jdbc20-oracle.jsp?page=<%=intPage+1%>">下一页</a><%}%> <%if(intPage>1){%><a href="jdbc20-oracle.jsp?page=<%=intPage-1%>">上一页</a><%}%>
</body>
</html>
<%
//关闭结果集
sqlRst.close();
//关闭SQL语句对象
sqlStmt.close();
//关闭数据库
sqlCon.close();
%>