String countSql="SELECT COUNT(1) FROM aa ";
String sqlParam[][] =new String[0][0];
java.sql.ResultSet rs = dps.query(countSql,sqlParam,0); 
String nowPage=request.getParameter("nextPage");//当前显示页数
if(nowPage==null){nowPage="1";}
int nowPageNum=Integer.parseInt(nowPage);
int pageShowNums=16;//每页面显示数目
int allRowNum=0;//总记录数
int allPageNum=0;//总页数
int modNum=0;//最后一页显示条数
if(rs.next()){
allRowNum=rs.getInt(1);
modNum=allRowNum%pageShowNums;
if(modNum==0){
allPageNum=allRowNum/pageShowNums;
}else{
allPageNum=(allRowNum/pageShowNums)+1;
}
System.out.println("总共有记录数"+allRowNum+"条,共:"+allPageNum+"页");
rs.close();
}else{
rs.close();
response.sendRedirect("/common/error.jsp?errorMsg=1取记录总数失败!'");
}

int startPos=(nowPageNum-1)*pageShowNums+1;
int endPos=0;
if(nowPageNum==allPageNum){
endPos=allRowNum;
}else{
endPos=(nowPageNum)*pageShowNums;
}
System.out.println("当前显示第"+nowPage+"页,从"+startPos+"到"+endPos+"条");
System.out.println(sql);
rs=dps.query(sql,sqlParam,0);
为什么页面每次都把全部数据显示出来,但后台打印出:总共有记录数127条,共:8页
当前显示第1页,从1到16条

解决方案 »

  1.   

    因为你就是那么写的啊。
    SELECT COUNT(1) FROM aa 
    这不就是全部查出来了吗
      

  2.   

    SQL在那里定义和赋值的啊 没有找到
    我眼睛度数太高了?
      

  3.   

    LZ在分页吗 ??到网上找个例子好好参考下吧 ...
    sqlserver分页SQL(page:当前页,pagesize:长度):分页
    select top pagesize * from aa
    where id not in (select top (page-1)*pagesize id from aa)得到总数:SELECT COUNT(*) FROM aa 
      

  4.   

    不查出来总数怎么做分页?
    我blog里有个分页,自己整理过确认可以用的。楼主有兴趣可以看下。。
    http://hi.baidu.com/newfys/blog/item/6b5aa4d9066758ee38012f72.html
      

  5.   

    怎么改改sql??为什么不全取出来呢?
      

  6.   

    SELECT COUNT(1) FROM aa---->SELECT COUNT(*) FROM aa
      

  7.   

    你的SQL写错了
    应该没有代分页的数据参数进SQL。
    还有我没有找到你的SQL在那