执行 "select * from addressbook order by name  语句
然后设置结果的条数为你的页面显示条数
rs.setFetchSize(pageSize);
  然后再定位到第几条记录
        int absoluteLocation = pageSize * (curPage - 1) + 1;
       //System.out.println("绝对定位于: " + absoluteLocation);
        if (rs.absolute(absoluteLocation) == false) {
          return null;
        }最后 循环取出就可以了
while (rsw.next())
{}

解决方案 »

  1.   

    String sql="select top pageSize * from table1 where id not in (select top 10 id from table1)";
    将pageSize换成每页现实的行数
    将10换成(pageIndex-1)*pageSize
    pageIndex 是当前页的索引
      

  2.   


    final int PAGE_SIZE = 4;  //PAGE_SIZE 为每页显示的记录条数 
    int startPos = (pageNo-1) * PAGE_SIZE;  //pageNo 为当前页 
    这是mysql语句 
    String sql = "select * from addressbook order by name limit " + startPos + "," + PAGE_SIZE ; SQLSERVER 中有top关键字String sql = "select top "+PAGE_SIZE+"  * from addressbook where id not in 
    (
        select top startPos id from addressbook
    )";
      

  3.   

    一般情况下ResultSet只能向前推进,但是1楼的用法就要用参数来构建rs了,这样也是会带来一定的系统开销的,而且给修改结果集提供了可能