我用html了一个table,来显示从数据库查询的结果
怎么让每10行就换一页啊,即每页显示10行?
<table border align= "CENTER">
<tr><th>服装编号</th><th>服装名称</th><th>服装类型</th><th>服装大小</th><th>服装价格</th>
<tr><td align = "CENTER">id </td>
<td align = "CENTER">name</td>
<td align = "CENTER">type</td>
<td align = "CENTER">sizes</td>
<td align = "CENTER">price"</td>
</table>

解决方案 »

  1.   

    此回复为自动发出,仅用于显示而已,并无任何其他特殊作用
    楼主【chenhaifeng88888】截止到2008-06-25 16:23:53的历史汇总数据(不包括此帖):
    发帖数:0                  发帖分:0                  
    结贴数:0                  结贴分:0                  
    未结数:0                  未结分:0                  
    结贴率:-------------------结分率:-------------------
    如何结贴请参考这里:http://topic.csdn.net/u/20080501/09/ef7ba1b3-6466-49f6-9d92-36fe6d471dd1.html
      

  2.   

    //连接字符串
    String url="jdbc:mysql://localhost/"+dbName+"?user="+userName+"&password="+userPasswd;
    Class.forName(driverName).newInstance();
    Connection connection=DriverManager.getConnection(url);
    Statement statement = connection.createStatement();//每页显示记录数
    int PageSize = 8;
    int StartRow = 0; //开始显示记录的编号 
    int PageNo=0;//需要显示的页数
    int CounterStart=0;//每页页码的初始值
    int CounterEnd=0;//显示页码的最大值
    int RecordCount=0;//总记录数;
    int MaxPage=0;//总页数
    int PrevStart=0;//前一页
    int NextPage=0;//下一页
    int LastRec=0; 
    int LastStartRecord=0;//最后一页开始显示记录的编号 //获取需要显示的页数,由用户提交
    if(request.getParameter("PageNo")==null){ //如果为空,则表示第1页
       if(StartRow == 0){
          PageNo = StartRow + 1; //设定为1
       }
    }else{
       PageNo = Integer.parseInt(request.getParameter("PageNo")); //获得用户提交的页数
       StartRow = (PageNo - 1) * PageSize; //获得开始显示的记录编号
    }//因为显示页码的数量是动态变化的,假如总共有一百页,则不可能同时显示100个链接。而是根据当前的页数显示
    //一定数量的页面链接//设置显示页码的初始值!!
       if(PageNo % PageSize == 0){
        CounterStart = PageNo - (PageSize - 1);
       }else{
        CounterStart = PageNo - (PageNo % PageSize) + 1;
       }CounterEnd = CounterStart + (PageSize - 1);
    %><html>
    <head>
    <title>分页显示记录</title>
    <link rel="stylesheet" href="style.css" type="text/css">
    </head>
    <%//获取总记录数
    ResultSet rs = statement.executeQuery("select count(*) from items" ); 
    rs.next(); 
    RecordCount = rs.getInt(1); rs = statement.executeQuery("SELECT image_url,author,price,item_id FROM items ORDER BY item_id DESC LIMIT "
            +StartRow+", "+PageSize);//获取总页数
    MaxPage = RecordCount % PageSize;
    if(RecordCount % PageSize == 0){
       MaxPage = RecordCount / PageSize;
    }else{
        MaxPage = RecordCount/PageSize+1;
    }
    %>
    <body class="UsePageBg">
    <table width="100%" border="0" class="InternalHeader">
    <tr>
        <td width="24%"><font size=4>分页显示记录</font></td>
         <td width="76%">
            <font size=4><%="总共"+RecordCount+"条记录 - 当前页:"+PageNo+"/"+MaxPage %></font>
         </td>
    </tr>
    </table><br>
    <table width="100%" border="0" class="NormalTableTwo">
       <tr> 
         <td class="InternalHeader">记录序号</td>
         <td class="InternalHeader" >图像路径</td>
         <td class="InternalHeader" >作者</td>
         <td class="InternalHeader" >价格</td>
         <td class="InternalHeader" >图书编号</td>
       </tr><%
    int i = 1;
    while (rs.next()) {
       int bil = i + (PageNo-1)*PageSize;
    %>
    <tr> 
         <td class="NormalFieldTwo" ><%=bil %></td>
         <td class="NormalFieldTwo" ><%=rs.getString(1)%></td>
         <td class="NormalFieldTwo" ><%=rs.getString(2)%></td>
         <td class="NormalFieldTwo" ><%=rs.getString(3)%></td>
         <td class="NormalFieldTwo" ><%=rs.getString(4)%></td>
       </tr>
    <%
       i++;
    }%>
    </table>
    ><br>
    <table width="100%" border="0" class="InternalHeader">
       <tr>
        <td><div align="center">
    <%
        out.print("<font size=4>");
       //显示第一页或者前一页的链接
       //如果当前页不是第1页,则显示第一页和前一页的链接
       if(PageNo != 1){
         PrevStart = PageNo - 1;
         out.print("<a href=TestPage.jsp?PageNo=1>第一页 </a>: ");
         out.print("<a href=TestPage.jsp?PageNo="+PrevStart+">前一页</a>");
       }
       out.print("[");    //打印需要显示的页码
        for(int c=CounterStart;c<=CounterEnd;c++){
        if(c <MaxPage){
          if(c == PageNo){
            if(c %PageSize == 0){
              out.print(c);
            }else{
               out.print(c+" ,");
            }
          }else if(c % PageSize == 0){
             out.print("<a href=TestPage.jsp?PageNo="+c+">"+c+"</a>");
          }else{
             out.print("<a href=TestPage.jsp?PageNo="+c+">"+c+"</a> ,");
          }
        }else{
          if(PageNo == MaxPage){
           out.print(c);
           break;
          }else{
             out.print("<a href=TestPage.jsp?PageNo="+c+">"+c+"</a>");
          break;
        }
       }
    }out.print("]");;if(PageNo < MaxPage){ //如果当前页不是最后一页,则显示下一页链接
         NextPage = PageNo + 1;
         out.print("<a href=TestPage.jsp?PageNo="+NextPage+">下一页</a>");
    }//同时如果当前页不是最后一页,要显示最后一页的链接
    if(PageNo < MaxPage){
        LastRec = RecordCount % PageSize;
        if(LastRec == 0){
           LastStartRecord = RecordCount - PageSize;
        }
        else{
           LastStartRecord = RecordCount - LastRec;
        }    out.print(":");
         out.print("<a href=TestPage.jsp?PageNo="+MaxPage+">最后一页</a>");
       }
       out.print("</font>");
    %>
    </div>
    </td>
    </tr>
    </table>
    <%
       rs.close();
       statement.close();
        connection.close();
    %>
    </body>
    </html>
      

  3.   

    如果你用的是hibernate那就很简单,设置每页显示的记录数就可以。不是的话,那你就先从数据库中取出所有的记录,然后用10分组就可以。