亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 9031 | 回復: 5
打印 上一主題 下一主題

java 中采用List 分頁技術難題 [復制鏈接]

論壇徽章:
0
跳轉到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2007-06-13 08:12 |只看該作者 |倒序瀏覽
采用MVC方式開發(fā)時,將數(shù)據(jù)庫查詢的記錄集放入ArrayList對象中,在顯示的頁面將ArrayList對像展示成表格形式,當使用分頁時,由于ArrayList對象是在request中的,所以用<href a >時本頁面會失效,真是個難題。

<%
   ArrayList rptdata = (ArrayList)request.getAttribute("rptdata");
  
%>
<%
   
    Iterator data =  rptdata.iterator();
   

    int pnum=1;//頁碼
    int pagesize=1; //每頁20個記錄
    String strPage = request.getParameter("page");
    if(strPage!=null)
     {
      pnum=Integer.parseInt(strPage);
     }
     double pcount =rptdata.size()/pagesize;
     int pageCount=1;
     if(pcount>1)
       {
          pageCount=(int)Math.ceil(rptdata.size()/pagesize);
       }
   
    out.println("pcount=="+pcount);
    int line = 1;
    int line1 = (pnum-1)*pagesize+1;
    int line2 = pnum*pagesize;
    //out.println("line1=="+line1);
    //out.println("line2=="+line2);
    double hj=0d;
    while(data.hasNext() )
    {
       gwList gw = (gwList)data.next();
       if (line>=line1 && line<=line2)
       {
     
%>
        <tr>
                <td width="34"><%=line%> </td>
                <td width="140"><%=gw.getInst_name()%> </td>
                <td width="88"><%=gw.getApp_name()%> </td>
                <td width="39" align="center"><%=gw.getApp_sex()%> </td>
                <td width="91"><%=gw.getApp_userid()%> </td>
                <td width="107" align="center"><%=gw.getApp_job()%> </td>
                <td width="69" align="right"><%=gw.getMonth_earning()%> </td>
                <td width="67" align="right"><%=gw.getFamily_pop()%> </td>
                <td width="58" align="right"><%=gw.getFamily_mon_earning()%> </td>
                <td width="71" align="center"><%=gw.getIf_SS()%> </td>
                <td width="55" align="center"><%=gw.getIf_city()%> </td>
                <td width="101" align="right"><%=gw.getAllo_money()%> </td>
                <td width="50" align="center"><%=gw.getStaff_type()%> </td>
        </tr>
        <%   
             }
             hj+=gw.getAllo_money();
            line++;
           }
        %>
        <tr>
                <td width="174" colspan="2">
                <p align="center">合計</td>
                <td width="796" colspan="11">
                <p align="center">共計<%=(--line)%>人,金額共計<%=hj%>元。</td>
        </tr>
</table>
<div style="float:left;clear:right">第<%=pnum%>頁  共<%=pageCount%>頁  <%if(pnum>1) {%><a href=<%=request.getRequestURL()%>?page=<%=(pnum-1)%>>上一頁</a><%}%><%if(pnum<pageCount) {%><a href=<%=request.getRequestURL()%>?page=<%=(pnum+1)%>>下一頁</a><%}%></div>

論壇徽章:
0
2 [報告]
發(fā)表于 2007-06-13 09:08 |只看該作者

高手在哪里?

高手在哪里?

論壇徽章:
0
3 [報告]
發(fā)表于 2007-06-13 09:46 |只看該作者
原帖由 Air_Fish 于 2007-6-13 09:08 發(fā)表
高手在哪里?

是做項目嗎
你就不知道分頁語句嗎 上網搜索一下吧

論壇徽章:
0
4 [報告]
發(fā)表于 2007-06-14 09:13 |只看該作者
分頁不能這么寫,你應該在查詢數(shù)據(jù)的時候分頁,然后再傳回來進行顯示,這樣的話數(shù)據(jù)量大也沒有關系的;你這種做法也能實現(xiàn),你把查詢的代碼也寫在jsp中,只是這樣的適合于數(shù)據(jù)量小的時候。
查詢數(shù)據(jù)時最好用OJB、hibernate等ORM組件,這樣的話就把分頁語句同數(shù)據(jù)庫產品間的耦合降低了,如果換數(shù)據(jù)庫的話只需要改下配置文件就行了。
如果是做項目給用戶提供更好的體驗方式可以使用ajax,你每次取過來的數(shù)據(jù)量小一些就可以了。
如果還有更高的要求那就使用或自己做一個分頁工具,包括頁面排序、表頭固定、表的任意列固定等等功能,網上有很多資料可以參考的

論壇徽章:
0
5 [報告]
發(fā)表于 2007-06-15 22:17 |只看該作者
不知道你的目的.... 什么 <href a> ?
建議你改 jstl 分頁 ...  jsp這個已經淘汰了...

論壇徽章:
0
6 [報告]
發(fā)表于 2007-06-16 18:31 |只看該作者
對呀,還是自己寫一個工具好啊
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復

  

北京盛拓優(yōu)訊信息技術有限公司. 版權所有 京ICP備16024965號-6 北京市公安局海淀分局網監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關心和支持過ChinaUnix的朋友們 轉載本站內容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP