我一直被告知,在解析大量XML文件时,应该避免使用内存繁多的DOM解析器来支持轻量级SAX解析器。
我想在Liferay中解析一个巨大的XML文件。该文件只是一个项目列表,我需要单独处理这些项目,因此它是SAX的完美用例。
我找到了Liferay的SAXReaderUtil,但是尽管名字中有“SAX”,但它看起来像是一个DOM解析器。它没有事件,似乎只是返回一个Document并选择带有XPath的节点。我错了吗?
在开发Liferay模块时解析巨大的XML文件的正确方法是什么?
答案 0 :(得分:2)
没有什么可以强迫你使用Liferay的XML Utils。根据您提出问题的方式,我假设您在解析xml及其警告方面经验丰富。作为推论,我假设“你在Liferay中像其他任何地方一样”也可能就足够了。
理想情况下,您决定使用的XML解析器/处理器应该作为OSGi包(或者您发现已在Liferay中部署的那个)。