当前位置: 首页 > 图文教程 > 网络编程 > JSP > JDBC-ODBC翻页例子

JSP
Servlet及JSP中的多线程同步问题
使用Ant和Tomcat创建Web应用
如何直接在浏览器内运行SQL命令
Servlet、Jsp中的多国语言显示
html与jsp开发分离技术
通过Jsp发送动态图像
Servlets和JSP Pages最佳实践
学习在JSP中使用JavaBeans
JSP显示内容缓存技巧
应用JDOM处理数据库到XML转换的JSP实现
JSP中tomcat的SQL Server2000数据库连接池的配置
用JSTL实现JSP应用程序快速开发
浅谈4种类型的JDBC驱动程序
怎样设置 JSP 的虚拟目录
Java 中对文件的读写操作之比较
javamail在jsp中调用
jsp中任意文字转Unicode的通用模块
JSP与SQL SERVER的留言本
jspSmartUpload上传下载全攻略
Tomcat5.x中的虚拟主机配置方法

JSP 中的 JDBC-ODBC翻页例子


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


一、运行前准备

建议了一个MS SQLServer7数据库 DNS,名称为:Test_DB

数据库中有一个表:guestbook字段为:name(varchar),email(varchar),body(text)

数据库用户为sa 密码空,可以自己修改的。

二、代码

<%@ page contentType="text/html;charset=gb2312"%>

<%

//变量声明

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,j,k; //设置一页显示的记录数

intPageSize = 5; //取得待显示页码

strPage = request.getParameter("page");

if(strPage==null){

//表明在QueryString中没有page这一个参数,此时显示第一页数据

intPage = 1;

} else{

//将字符串转换成整型

intPage = java.lang.Integer.parseInt(strPage);

if(intPage<1) intPage = 1; }

//装载JDBC-ODBC驱动程序

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");

//设置数据库连接字符串

strCon = "jdbc:odbc:Test_DB";

//连接数据库

sqlCon = java.sql.DriverManager.getConnection(strCon,"sa","");

//创建SQL语句对象

sqlStmt = sqlCon.createStatement();

//获取记录总数

strSQL = "select count(*) from guestbook";

sqlRst = sqlStmt.executeQuery(strSQL);

//执行SQL语句并取得结果集

sqlRst.next(); //记录集刚打开的时候,指针位于第一条记录之前

intRowCount = sqlRst.getInt(1);

sqlRst.close(); //关闭结果集



//记算总页数

intPageCount = (intRowCount+intPageSize-1) / intPageSize;

//调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount;

//设置获取数据SQL语句

strSQL = "select name,email,body from guestbook";

//执行SQL语句并取得结果集

sqlRst = sqlStmt.executeQuery(strSQL);

//将记录指针定位到待显示页的第一条记录上

i = (intPage-1) * intPageSize;

for(j=0;j<i;j++) sqlRst.next(); %>

<html>

<head>

<title>JSP数据库操作例程 - 数据分页显示 - JDBC-ODBC</title>

</head>

<body>

<p align=center>jdbc-odbc留言版</p>

<table border="1" cellspacing="0" cellpadding="0" width=600 align=center>

<%

//显示数据

i = 0;

while(i<intPageSize && sqlRst.next()){ %>

<tr>

<td>姓名:<%=sqlRst.getString(1)%></td>

<td>邮件:<%=sqlRst.getString(2)%></td>

</tr>

<tr>

<td colspan=2><%=sqlRst.getString(3)%></td>

</tr>

<% i++; } %>

<tr>

<td colspan=2 align=center>

第<%=intPage%>页 共<%=intPageCount%>页

<%if(intPage<intPageCount){%>

<a href="mssql.jsp?page=<%=intPage+1%>">下一页</a><%

}

%>

<%if(intPage>1){%>

<a href="mssql.jsp?page=<%=intPage-1%>">上一页</a><%

}

%>

</td>

</tr>

</table> </body>

</html>

<%

//关闭结果集

sqlRst.close();

//关闭SQL语句对象

sqlStmt.close();

//关闭数据库

sqlCon.close();

%>

三、怎么去运行?

将代码存为文件test.jsp

Orion Application Server下:

Copy到orion的default-web-app目录下,通过:

http://localhost:port/test.jsp

访问测试

对于Resin,Tomcat,JWS等等,都可以运行通过。