在70000或更多记录上的displaytag中缓慢迭代

时间:2014-09-17 07:20:41

标签: java struts2 export displaytag

我在报告中使用displayTag表格视图。它可以很好地工作到60K记录,但是当数据超过70K或更多时,它需要一些时间来显示。 displayTag中的数据是否存在任何限制,export选项中的相同问题是否存在大量数据延迟的原因。

我的表有30列和70k +行

代码

<display:table id="listDisplay1" list="showLeadList" name="showLeadList" export="${session['Lead Status Report'][4]}" requestURI="" cellpadding="0" cellspacing="0" pagesize="50">
            <display:setProperty name="export.csv" value="false" />
            <display:setProperty name="export.xml" value="false" />
            <display:setProperty name="export.excel" value="false" />
            <display:setProperty name="export.[mymedia].filename" value="LeadStatus_details${currentDateTime}.xlsx" />
            <display:setProperty name="export.pdf" value="true" /> 
            <display:setProperty name="export.pdf.filename" value="LeadStatus_details${currentDateTime}.pdf"/>
            <display:setProperty name="paging.banner.placement" value="bottom" /> 
            <display:column property="sno" title="S.No." media="html excel"></display:column>
            <s:iterator var="DisplayMap" value="#attr.listDisplay1.columnMap" >
                <display:column  title="${DisplayMap.key}" value="${DisplayMap.value}" />
            </s:iterator>
        </display:table>

我正在使用Struts2的version(2.3.15)

第二个问题 displayTag get使用export方法是真的吗?如果是,那么我们如何将其修改为post方法?

1 个答案:

答案 0 :(得分:0)

这是我用displayTag唯一遇到的问题! 每次使用它时,它会将整个表加载到内存中!即使你改变页面!

你必须在源代码中更改Query并添加一些边界!