如何在GWT中解析大数据(XML)

时间:2014-01-28 17:19:00

标签: java xml gwt

在我的GWT应用程序中,我正在从REST服务器检索XML数据。我正在使用Piriti XML解析器https://code.google.com/p/piriti/wiki/Xml来反序列化对象并在表中显示。只要我们返回1000个记录,一切都很好,但是结果很大,它只是挂起并给用户留言以阻止后面运行的java脚本。有人可以帮我找到在GWT中处理大数据的最佳方法,或者更准确地说是在GWT中解析大XML文件的最佳方法。

非常感谢你的所有建议。

1 个答案:

答案 0 :(得分:2)

问题在于解析大型XML文档会降低浏览器的速度。而且你需要足够的内存来保存整个DOM以及内存中的映射对象。唯一的解决方案是避免这种情况。您必须调整REST服务才能将少量数据块发送到浏览器。因此,如果您已有分页表,则只能在开头检索第一页的数据。如果用户想要更改页面,则执行另一个REST调用以检索下一页的数据。

如果您无法更改REST服务本身,则可以创建另一个服务器端服务(在您控制的服务器上)作为代理。首次访问时,您调用原始REST服务,将XML存储在您自己的服务器上,并允许客户端仅检索该XML的部分内容。