当前时区 GMT+8, 现在时间是 2008-8-30 19:28 游客: 注册 登录 仅登录论坛 | 搜索 帮助


标题: JSP数据库操作例程 - 数据分页显示
xingjikui
新手上路
Rank: 1



UID 235968
精华 0
积分 41
帖子 13
阅读权限 10
注册 2007-1-20
状态 离线
发表于 2007-2-26 09:26  资料  短消息  加为好友  QQ
JSP数据库操作例程 - 数据分页显示

<%@ page c %>
<%//变量声明
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;http://www.oneedu.cn/bbs/thread-186-1-1.html

//设置一页显示的记录数
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 = "jdbcracle:thin:@linux:1521ra4cweb";

//连接数据库
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" c>
<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();

顶部
yeale
注册会员
Rank: 2


UID 175909
精华 0
积分 453
帖子 213
阅读权限 20
注册 2004-12-30
来自 China
状态 离线
发表于 2007-3-27 10:15  资料  短消息  加为好友  添加 yeale 为MSN好友 通过MSN和 yeale 交谈
这个例子能运行吗?这里用的数据库是orcacle,我用的是sql server,试不了。





拿起时全心全意,放下时平心静气。 不需要用权力来感知自我的价值, 也不需要去依附别人来获得快乐。
顶部
 


Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - 中国Linux公社 - WAP