如何使用Java解析Liferay中的巨大XML文件?

时间:2017-05-19 15:14:31

标签: xml parsing liferay sax liferay-7

我一直被告知,在解析大量XML文件时,应该避免使用内存繁多的DOM解析器来支持轻量级SAX解析器。

我想在Liferay中解析一个巨大的XML文件。该文件只是一个项目列表,我需要单独处理这些项目,因此它是SAX的完美用例。

我找到了Liferay的SAXReaderUtil,但是尽管名字中有“SAX”,但它看起来像是一个DOM解析器。它没有事件,似乎只是返回一个Document并选择带有XPath的节点。我错了吗?

在开发Liferay模块时解析巨大的XML文件的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

没有什么可以强迫你使用Liferay的XML Utils。根据您提出问题的方式,我假设您在解析xml及其警告方面经验丰富。作为推论,我假设“你在Liferay中像其他任何地方一样”也可能就足够了。

理想情况下,您决定使用的XML解析器/处理器应该作为OSGi包(或者您发现已在Liferay中部署的那个)。