日期:2014-05-18  浏览次数:20657 次

请问怎么在jsp页面做分页????
在一个jsp页面中,通过访问数据库取出若干个记录,每个纪录为一行显示出来,要求一页显示10行,实现分页,请问怎么做?有没有类似的例子????谢谢了,新手

------解决方案--------------------
我也是新手,我自已写有一个bean用于分页
给你参考,也请各位大侠指点
package tool;

import java.sql.*;
import java.io.UnsupportedEncodingException;
import java.util.Vector;

import databaseroot.MyConnection;
import javax.naming.*;

/**
* <p> Title: </p>
*
* <p> Description:实现分页显示 </p>
*
* <p> Copyright: Copyright (c) 2007 </p>
*
* <p> Company: </p>
*
* @author 詹伟胜
* @version 1.0
*/
public class Pages {
private int currenryPage;
private int pageSize;
private int fieldCount;
private int totalPages;
private int rowNumber;
private java.sql.Connection conn;
/**
*param sql 表示查询要对其进行分页输出的表的SQL语句
* 如:select count(id) from student
*param pageSize 表示一页要显示多少条记录
*/
public Pages(String sql, int pageSize) {
try {
conn = databaseroot.MyConnection.getConnection();
} catch (NamingException ex) {
ex.printStackTrace();
} catch (SQLException ex) {
ex.printStackTrace();
}
this.pageSize = pageSize;
initRowNumber(sql);
initTotalPages(pageSize);
}

/**
*功能:获得总的记录数目
*param String sql 要查询的SQL语句如:select count(id) from student.
*/
private int initRowNumber(String sql) {
//String sql = "select count(SEQNO)as rowNumber from ENGLISHTEST ";

ResultSet rs = null;
Statement st = null;
// System.out.println(sql);
try {
st = conn.createStatement();
rs = st.executeQuery(sql);
} catch (SQLException ex) {
ex.printStackTrace();
}
int number = 0;

try {
if (rs.next()) {
number = rs.getInt(1);
}
} catch (SQLException sqle) {
sqle.printStackTrace();
}finally{
try {
if (rs != null) {
rs.close();
}
if (st != null) {
st.close();
}
} catch (SQLException ex) {
ex.printStackTrace();
rs = null;
st = null;
}
}


return this.rowNumber = number;
}
------解决方案--------------------
当数据量小时,你可以用disPlay标签!