Tho*_*ley 5 java jsf multithreading richfaces
我目前有一个 Richfaces dataTable 绑定到一个包含所有数据的支持 bean。此表绑定到 Richfaces 数据滚动条。
然后用户可以在数据之间输入滚动。
还有一个文本框,可以根据他们输入的文本动态更新显示给他们的数据表结果。它在 keyUp 事件上重新呈现 dataTable 和 datascroller。
它绑定到的支持 bean 首先从许多数据库表中提取所有数据。当用户向服务器提交一个普通的 post 请求时,这个数据被拉取,这个请求的结果用于所有后续的 Ajax 相关查询(结果保存为对象列表,不再进行数据库调用)。
我有一个问题,数据集有时可能很大,有 100,000 条记录。这会导致对服务器的初始请求需要很长时间。
我正在考虑的一种可能的解决方案是在一个线程中为初始用户端口请求仅拉回少量数据。然后可以将这些数据显示在数据表中,而主线程在后台工作,将大量数据拉回来。
这可行吗?当主线程拉回新数据时,是否可以更新我的数据表/数据收集器?会不会很困难?
已经研究了数据库和查询优化,因此无法再进行任何有意义的改进。
提前致谢(我知道这可能不是一个容易回答的问题)