Javascript javaweb应用程序中的大数据处理

Javascript javaweb应用程序中的大数据处理,javascript,java,html,Javascript,Java,Html,我被分配了一项任务来处理大量数据,然后以表格形式显示到网页上。我使用HTML/JSP和JS作为前端,Java作为后端。 业务逻辑是查询数据库(对我来说是Oracle)并获取数据。 查询看起来像 选择字段1、字段2等。。来自表,其中field1=“SearchString” 限制30 搜索字符串将由用户提供 因此,每次执行查询时,我都会得到30行并将其存储在一个bean中。 对于迭代1中的field2数据,我将再次执行查询,这将给出另外30行,我将在bean中追加这些行,循环继续,直到没有匹配的记

我被分配了一项任务来处理大量数据,然后以表格形式显示到网页上。我使用HTML/JSP和JS作为前端,Java作为后端。 业务逻辑是查询数据库(对我来说是Oracle)并获取数据。 查询看起来像 选择字段1、字段2等。。来自表,其中field1=“SearchString” 限制30

搜索字符串将由用户提供

因此,每次执行查询时,我都会得到30行并将其存储在一个bean中。 对于迭代1中的field2数据,我将再次执行查询,这将给出另外30行,我将在bean中追加这些行,循环继续,直到没有匹配的记录为止。之后,我需要以表格形式在UI中显示bean数据

现在,当数据庞大时,问题就出现了。比如,迭代进行1000次,得到30k条记录。然后代码在这个循环中停留了更多的时间,UI屏幕显示加载

有没有更好的方法来处理我的情况

注意:我无法对查询执行任何操作。因为这是禁止的。
并且该查询是伪查询而不是实际查询。如果第一条记录有30k行的匹配记录。我需要在每次迭代中取30行。

我同意这样的评论,即当您试图向UI呈现成千上万行时,这不是最佳做法

听起来确实应该在UI上实现分页。这是通过使用查询来完成的。。。我不知道您使用的是什么数据库系统,但这里有一个SQL Server的示例


您可以向业务部门解释,使用分页更适合用户。举个例子,google search如何为您提供页面搜索结果,而不是在一个页面中显示数百万个包含cat图片的网站。

为什么您要一次又一次地循环。我的意思是,如果您想在所有字段中搜索字符串,您可以使用查询,如“Select field1,field2 from table”,其中field1如“%searchString%”或field2如“%searchString%”限制为30。我无法更改查询,因为这是禁止进行业务的。因此基本上@AvinashSagar是正确的,他们认为您从db查询数据的方式有点奇怪。您没有指定如何将数据返回到客户端。这是对用户传入查询的直接响应吗?无论如何,如果您收集了所有项目,那么客户机最好只请求一组数据(比如前100个项目)并显示它。现在,如果用户向下滚动该表,您通常会向服务器发出一个新的请求,服务器将加载接下来的100个项目,并使用JS操作DOM(向表中添加新的最近项目)。非常感谢你,