【发布时间】:2016-06-22 14:31:10
【问题描述】:
我想知道Java中StAX和SAX解析有什么区别?
谁能尽可能简单地解释一下,我不明白一个在拉数据而另一个在推送是什么意思?
【问题讨论】:
标签: java xml-parsing
我想知道Java中StAX和SAX解析有什么区别?
谁能尽可能简单地解释一下,我不明白一个在拉数据而另一个在推送是什么意思?
【问题讨论】:
标签: java xml-parsing
“Push”和“Pull”是指使用的编码风格。
对于“推送”,您注册了一个“处理程序”,解析器在处理文档时调用该处理程序。因此,您向解析器注册您的处理程序,然后告诉它解析文档。解析器将调用您的处理程序来告诉您的代码元素何时开始、结束等。
对于“Pull”,您的代码正在推动逐步解析文档的过程。这就像为文档获取Iterator,您的代码将循环并从解析器请求下一个元素。换句话说,您的“处理程序”代码正在调用解析器以处理下一个元素。
不同的编码风格使与文档的不同类型的交互更容易或更难。为特定项目选择哪种样式取决于该项目的要求。
【讨论】: