JAVA/JSP学习系列之五(JDBC-ODBC翻页例子)

一、运行前准备

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

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

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

二、代码

1@ page contentType="text/html;charset=gb2312"
 1   
 2  
 3//变量声明   
 4  
 5java.sql.Connection sqlCon; //数据库连接对象   
 6  
 7java.sql.Statement sqlStmt; //SQL语句对象   
 8  
 9java.sql.ResultSet sqlRst; //结果集对象   
10  
11java.lang.String strCon; //数据库连接字符串   
12  
13java.lang.String strSQL; //SQL语句   
14  
15int intPageSize; //一页显示的记录数   
16  
17int intRowCount; //记录总数   
18  
19int intPageCount; //总页数   
20  
21int intPage; //待显示页码   
22  
23java.lang.String strPage;   
24  
25int i,j,k; //设置一页显示的记录数   
26  
27intPageSize = 5; //取得待显示页码   
28  
29strPage = request.getParameter("page");   
30  
31if(strPage==null){   
32  
33//表明在QueryString中没有page这一个参数,此时显示第一页数据   
34  
35intPage = 1;   
36  
37} else{   
38  
39//将字符串转换成整型   
40  
41intPage = java.lang.Integer.parseInt(strPage);   
42  
43if(intPage<1) intPage = 1; }   
44  
45//装载JDBC-ODBC驱动程序   
46  
47Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");   
48  
49//设置数据库连接字符串   
50  
51strCon = "jdbc:odbc:Test_DB";   
52  
53//连接数据库   
54  
55sqlCon = java.sql.DriverManager.getConnection(strCon,"sa","");   
56  
57//创建SQL语句对象   
58  
59sqlStmt = sqlCon.createStatement();   
60  
61//获取记录总数   
62  
63strSQL = "select count(*) from guestbook";   
64  
65sqlRst = sqlStmt.executeQuery(strSQL);   
66  
67//执行SQL语句并取得结果集   
68  
69sqlRst.next(); //记录集刚打开的时候,指针位于第一条记录之前   
70  
71intRowCount = sqlRst.getInt(1);   
72  
73sqlRst.close(); //关闭结果集   
74  
75  
76  
77//记算总页数   
78  
79intPageCount = (intRowCount+intPageSize-1) / intPageSize;   
80  
81//调整待显示的页码 if(intPage>intPageCount) intPage = intPageCount;   
82  
83//设置获取数据SQL语句   
84  
85strSQL = "select name,email,body from guestbook";   
86  
87//执行SQL语句并取得结果集   
88  
89sqlRst = sqlStmt.executeQuery(strSQL);   
90  
91//将记录指针定位到待显示页的第一条记录上   
92  
93i = (intPage-1) * intPageSize;   
94  
95for(j=0;j

<i;j++) <html="" ```="" sqlrst.next();="">

JSP数据库操作例程 - 数据分页显示 - JDBC-ODBC

jdbc-odbc留言版

 1   
 2  
 3//显示数据   
 4  
 5i = 0;   
 6  
 7while(i&lt;intpagesize &amp;&amp;="" &lt;tr="" ```="" sqlrst.next()){="">
 8<td>姓名:```
 9=sqlRst.getString(1)
10```</td>
11<td>邮件:```
12=sqlRst.getString(2)
13```</td>
14
15<tr>
16<td colspan="2">```
17=sqlRst.getString(3)
18```</td>
19</tr>   
20  

i++; }

 1  
 2<tr>
 3<td align="center" colspan="2">   
 4  
 5第```
 6=intPage
 7```页 共```
 8=intPageCount
 9```页   
10  

if(intPage<intpagecount){ <a="" ="" href="mssql.jsp?page= =intPage+1 ">下一页

}

1  

if(intPage&gt;1){

1  
2<a href="mssql.jsp?page=```
3=intPage-1
4```">上一页</a>```
5   
6  
7}   
8  

</intpagecount){>

 1   
 2  
 3//关闭结果集   
 4  
 5sqlRst.close();   
 6  
 7//关闭SQL语句对象   
 8  
 9sqlStmt.close();   
10  
11//关闭数据库   
12  
13sqlCon.close();   
14  

三、怎么去运行?

将代码存为文件test.jsp

Orion Application Server下:

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

http://localhost:port/test.jsp

访问测试

对于Resin,Tomcat,JWS等等,都可以运行通过。</i;j++)>

Published At
Categories with Web编程
Tagged with
comments powered by Disqus