rs.absolute((ShowPage-1)*PageSize+1);  //回复帖子的分页

解决方案 »

  1.   

    rs.absolute((ShowPage-1)*PageSize+1); 将指针定位在某一行
    这种分页要注意两个地方
    第一 因为用到rs.absolute(),要将结果集设成可滚动的
    statement=connection.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);
    第二在 for循环的里面的最后部分要加上这个
    for(...;...;...){
    ...      ...
    rs.next();//每取一行数据,指针向下移一位
    if(rs.isAfterLast()){//判断指针是否到结尾了,是则跳出循环
    break;
      }
    }
     
      

  2.   

    sql="update 贴子 set 点击次数=点击次数+1 where 贴子id="+Note_Id;  //更新对应帖子的点击数
           stmt.executeUpdate(sql);  //执行更新操作
           int PageSize=10;  //一页显示的记录数
           int RecordCount=0;  //记录总数
           int PageCount=0;  //总页数
           int ShowPage=1;  //带显示页数
           sql="Select * from 用户表,贴子 where 贴子.贴子作者=用户表.用户名  And 贴子.贴子id="+Note_Id+" And 版块id="+Board_Id+" or 贴子.贴子作者=用户表.用户名  And 贴子.回复id="+Note_Id+" And 版块id="+Board_Id+"  order by 贴子.贴子id";  //遍历表找到对应id,和类别的帖子
           //out.println(sql);  
       rs=stmt.executeQuery(sql);  //执行查询操作
           rs.last();  //记录直到最后一条
           RecordCount=rs.getRow();  //获取总的记录
           PageCount=(RecordCount % PageSize==0)?(RecordCount/PageSize):(RecordCount/PageSize+1);  //计算总页数       
    String Page=request.getParameter("page");  //一下是调整带显示的页码
           if (Page!=null)  
           {  
                 ShowPage=Integer.parseInt(Page);  
              if (ShowPage>PageCount)  
                 ShowPage=PageCount;  
              else if(ShowPage  <0)  
                 ShowPage=1;  
           }else  
                 ShowPage=1;       if (RecordCount>0)  
         {  
         rs.absolute((ShowPage-1)*PageSize+1);  
         for (int i=1;i  <PageSize;i++)应该就是这样的,分页显示记录的功能