只要一个简单的分页第三方没想到这么难啊
初衷只希望满足
1.采用每次取出一部分的,分页方式.而不是把数据全部取出来才分页
   (
     1.全部取出来效率低 
     2.全部取出来分.如果并发大的话会造成,新增的信息不再该次分页中出现,或者删除的信息依然出现在分页里
   )
2.希望能多点分页Style来选择
  (
   1.首页 上页 下页 尾页
   2.1 2 3 4 5 6 7 8...(Google模式)
  )
  
 最后我找来找去阿!就为了满足我这两个小小的要求阿!
 DisplayTag和ValueList不满足我的要求1
 eXtremeComponents说是用limit可以做到一次只取出一部分数据啊!但是我不明白,获得数据的时候,Sql是一次把全部数据都取出来了放入Rs或者List.
 难道limit是每次都要把全部数据重新拿出来一次.然后在再获取的Rs或List这一层里定位?那这样不是效率更低吗?
 而且eXtremeComponents也不支持我希望的要求2
 同时这个项目据说也不维护了啊...后续版本叫 Jmesa 真是搞得人很乱啊
 
 国内也有一个团队在做一个叫 GT-Grid 的东西也是基于 eXtremeComponents的.最后
 单独了现在叫 ECSide 
 看起来不错啊.............可以Exp PDF 还可以order by List 
 但是这两个基本功能...却都没有人做到啊!
 他们都说自己是做一个......表单类...但是忘记了他们本来是为了分页来的

解决方案 »

  1.   

    分页么,自己写一个啦,再说大多数做web的公司都有自己的框架,分页是必备嘛
      

  2.   

    limit?我也用的limit,不过我是依靠了hibernate的延迟加载做的分页...
    难道limit是每次都要把全部数据查询一次.最后只加载当前页数据...
    由PageWraper来封装所有当前页数据......页面导航条用js写,借用jquary....
      

  3.   

    使用limit然后每次把全部数据查询一次.最后只加载当前页数据...更正手误喵~~``
      

  4.   

    抱歉,看错了.那么应该依靠rownum或者limit写复杂的sql语句啊喵~~``
      

  5.   

    1。其实就是想知道有没有能满足我要求的第三方
    2。想知道我对eXtremeComponents limit的理解有没有问题
    3。GT-Grid( ECSide )是否有人用过这个架构这个架构能否实现我的功能  
      

  6.   

    1。其实就是想知道有没有能满足我要求的第三方 
    2。想知道我对eXtremeComponents limit的理解有没有问题 
    3。GT-Grid( ECSide )是否有人用过这个架构这个架构能否实现我的功能  
      

  7.   

    参考下:
    <tr>
    <td colspan="2" align="middle">
    <%
    if(pageCount > 0){
    if(displayPage == 1){
    %>
    <input type="button" name="btnNavFirst" value="|&lt;" disabled style="width:18pt;" onclick="showHistory(1);">
    <input type="button" name="btnNavPrevious" value="&lt;&lt;" disabled style="width:18pt;" onclick="showHistory(<%=displayPage-1%>);">
    <%
    } else {
    %>
    <input type="button" name="btnNavFirst" value="|&lt;"  style="width:18pt;" onclick="showHistory(1);">
    <input type="button" name="btnNavPrevious" value="&lt;&lt;" style="width:18pt;" onclick="showHistory(<%=displayPage-1%>);">
    <%
    }
    %>
    <%=displayPage + "/" + pageCount%>
    <% 
    if(displayPage != pageCount){
    %>
    <input type="button" name="btnNavNext" value="&gt;&gt;" style="width:18pt;" onclick="showHistory(<%=displayPage+1%>);">
    <input type="button" name="btnNavLast" value="&gt;|" style="width:18pt;" onclick="javasceipt:showHistory(<%=pageCount%>);">
    <%
    } else {
    %>
    <input type="button" name="btnNavNext" value="&gt;&gt;" disabled style="width:18pt;" onclick="showHistory(<%=displayPage+1%>);">
    <input type="button" name="btnNavLast" value="&gt;|" disabled style="width:18pt;" onclick="showHistory(<%=pageCount%>);">
    <%
    }
    } else {
    %>
    <input type="button" name="btnNavFirst" value="|&lt;"  disabled style="width:18pt;" onclick="showHistory(1);">
    <input type="button" name="btnNavPrevious" value="&lt;&lt;" disabled style="width:18pt;" onclick="showHistory(<%=displayPage-1%>);">
    <%=displayPage + "/" + pageCount%>
    <input type="button" name="btnNavNext" value="&gt;&gt;" disabled style="width:18pt;" onclick="showHistory(<%=displayPage+1%>);">
    <input type="button" name="btnNavLast" value="&gt;|" disabled style="width:18pt;" onclick="showHistory(<%=pageCount%>);">
    <%
    }
    %>
    </td>
    </tr>
    <% }
     %>