处理 jsp 选择框中的 100 万条记录的最佳方法



我在jsp上遇到了性能问题。应用程序是在2002年使用jsp和javascript在struts 1.x上设计的。有一种情况是,在选择特定类别时,我们必须向用户显示大约 100 万条记录。就像 jsp 名称上有两个选择框作为 A 和 B。A 具有列表(类别约为 1000)。在选择类别时,我们必须在选择框 2 中显示子类别(大约 100 万条记录)。(Java脚本函数可以点击服务器并获取同一JSP上的记录)目前,我们面临着许多有关性能的问题。

请建议以现有方式向用户显示此类记录的最佳方式(在 jsp 上使用 2 个选择框),或任何其他最佳方法。

浏览 1000000 条记录对任何人来说都不是一件有趣的事情。我会介绍分页和一些过滤器/搜索,以便用户可以限制结果。

如果绝对必须显示包含一百万行的列表,则可以构建一个组件来呈现列表,但仅呈现可见的行。因此,您可以为滚动区域提供内部高度(rowHeight * numberOfRows),当有人滚动到某个部分时,您可以使用ajax仅从服务器加载该数据并渲染将进入该区域的项目,并将它们绝对放置在正确的位置。该技术称为对象池:https://en.wikipedia.org/wiki/Object_pool_pattern。这使您不必从服务器加载所有百万个项目,并且一次只需渲染其中的几个项目。

最新更新