jsp一样可以的啊。我通常是把结果集放在一个Vector变量里面,然后根据其长度(记录的个数)判断循环的边界条件。反正跟一般的编程没有什么两样啦  :)

解决方案 »

  1.   

    但是ASP中的记录集对象有PAGESIZE等方法,JSP的记录集对象能支持吗?
      

  2.   

    <%@ page contentType="text/html;charset=8859_1" %> <% 
    //变量声明 
    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("sun.jdbc.odbc.JdbcOdbcDriver"); //设置数据库连接字符串 ,你的ODBC名字
    strCon = "jdbc:odbc:yourODBCName"; //连接数据库 
    sqlCon = java.sql.DriverManager.getConnection(strCon,"",""); //创建一个可以滚动的只读的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" content="text/html; charset=gb2312"> 
    <title>JSP数据库操作例程 - 数据分页显示 - JDBC 2.0 - Access</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(); 
    %> 
      

  3.   

    yanchang(笨笨) 回答得相当清楚,该给分了