JSP数据库操作可以实现JSP数据分页。本文提供了一个MySQL分页的例子。
一、运行前准备
下载了mysql的jdbc驱动(一个jar文件)并加载在CLASSPATH。
建一个MySQL数据库test
数据库中有一个表:note,字段为:name(varchar)
二、下载,安装
- < %@ 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;
- //设置一页显示的记录数
- 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数据库操作例程 - 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){%>< a href="mysqlpage.jsp?page=< %=intPage+1%>">下一页< /a>< %}%>
- < %if(intPage>1){%>< a href="mysqlpage.jsp?page=< %=intPage-1%>">上一页< /a>< %}%>
- < /body>
- < /html>
- < %
- //关闭结果集
- sqlRst.close();
- //关闭SQL语句对象
- sqlStmt.close();
- //关闭数据库
- sqlCon.close();
- %>
如何运行JSP数据分页?
将代码存为文件test.jsp
Orion Application Server下:
Copy到orion的default-web-app目录下,通过:
- http://localhost:port/test.jsp
访问测试
对于Resin,Tomcat,JWS等等,都可以运行通过。JSP数据分页的实现方法到此介绍完毕。