使用显示标记库将数据渲染到表中

时间:2010-04-08 13:21:31

标签: java jsp struts pagination displaytag

我在Struts基础应用程序中使用displaytag 1.0。我有500万行来显示所有行数据的报告,通过50个记录进行分页。渲染数据需要5分钟。我们可以减少这个吗?请在一分钟内建议如何使用。

1 个答案:

答案 0 :(得分:0)

显然将完整的数据库拖入Java的内存而不仅仅是感兴趣的数据(当前页面)。您需要在DAO级别引入基于请求的分页。

首先,在您的DAO课程中,根据所使用的数据库执行SELECT stuff FROM data LIMIT firstrow OFFSET rowcount或类似的操作。然后在您的JSP中,在JSTL c:forEach或Struts'logic:iterate的帮助下自己创建一个HTML表。在后台的input type="hidden"元素中保留一个或两个请求参数:要显示的第一行(第一行)以及最终要一次显示的行数(rowcount)。最后提供一组按钮,指示服务器端代码每次都使用firstrow进/出rowcount。算一算吧。

您可以找到更详细的答案here