减少加载时间包含超过500个交易的数据表页(Decrease load time for data

2019-08-01 14:59发布

  1. 有没有办法只是通过使用数据表来减少在IE页面的加载时间。
  2. 如果我们使用服务器端分页和排序,可我们也做服务器端的快速搜索,也只渲染特定的标签,而不是整个页面。

    <h:panelGroup id="transactionsPanel"> <h:dataTable> </h:dataTable> <ui:repeat value="#{backing.pages}" var="page" varStatus="current"> <h:commandLink value="#{page}" actionListener="#{backing.page}" rendered="#{page != backing.currentPage}" > <f:ajax render="transactionsPanel"/> </h:commandLink> <ui:repeat>
    </h:panelGroup>

该监听器被调用,但没有更新页面,以显示点击下一页。

Answer 1:

有没有办法只是通过使用数据表来减少在IE页面的加载时间。

没有。

至少,不是没有由更健全的网页浏览器代替IE。 IE已知具有较差的HTML <table>渲染器。 这是一个客户端问题,而不是服务器(JSF)的问题。 您可以通过测量网络流量的速度和浏览器的HTML渲染速度证实了这一点。


如果我们使用服务器端分页和排序,可我们也做服务器端的快速搜索,也只渲染特定的标签,而不是整个页面。

只是在执行服务器端搜索(阿贾克斯)为好。

我建议看看JSF组件库,而不是抓住松散的jQuery插件和拼凑松散脚本一起。 例如PrimeFaces有一个懒洋洋地加载<p:dataTable>其解决只用干净的XHTML和JPA您的所有问题。 也参见懒惰<p:dataTable>展示示例和高效JSF分页 。



文章来源: Decrease load time for data table page containing more than 500 transactions