jsp如何分页呢?高手帮忙阿~

design365 2004-11-02 03:53:26
如题。
帮忙阿
...全文
102 点赞 收藏 10
写回复
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
xitianjile 2004-11-02
用个session保存当前页.
回复
zijianyi 2004-11-02
自己写算法灵活一点
回复
yahooli 2004-11-02
英雄所见略同
回复
funson 2004-11-02
不错,值得学习!
回复
hoggio_1980 2004-11-02
直接点击上面的管理,然后在对应的用户名的方框内写入分数,在上面填入你的注册密码,然后点击给分按钮就可以了阿
回复
hoggio_1980 2004-11-02
一、运行前准备

   下载了mysql的jdbc驱动(一个jar文件)并加载在CLASSPATH

   建一个MySQL数据库test

   数据库中有一个表:note,字段为:name(varchar)

<%@pagecontentType="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;

//设置一页显示的记录数

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驱动程序

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

//连接数据库

sqlCon= java.sql.DriverManager.getConnection("jdbc:mysql://localhost/test");

//创建语句对象

sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.

ResultSet.CONCUR_READ_ONLY); //执行SQL语句

strSQL = "select name from note";

//执行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 - mysql</title>

</head>

<body>

<table border="1" cellspacing="0" cellpadding="0">

<tr>

<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>

</tr>

<% sqlRst.next();

i++;

}

}

%>

</table>

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

<%if(intPage<intPageCount){%><ahref="mysqlpage.jsp?page=<%=intPage+1%>">下一页</a><%}%>

<%if(intPage>1){%><ahref="mysqlpage.jsp?page=<%=intPage-1%>">上一页</a><%}%>

</body>

</html>

<%

//关闭结果集

sqlRst.close();

//关闭SQL语句对象

sqlStmt.close();

//关闭数据库

sqlCon.close();

%>
回复
design365 2004-11-02
我不会给分阿?
怎么把分给你?
回复
wangnewton 2004-11-02
是啊
无非就是游标定段
然后页面显示
好像网上有很多这样的javabean组件
回复
hoggio_1980 2004-11-02
我有分页程序,要不要?联系:hoggio@msn.com 把分全部给我吧
回复
cao8208 2004-11-02
其算法都是一样的。网上搜一下有很多的
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告