Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
我正在使用Apache Tomcat开发RSS供稿聚合器。我想知道使用哪个解析器来读取RSS feed。我应该使用DOM,SAX还是StAX?我知道有一些特定的库可以读取Java的RSS feed,但是由于这是一个大学项目,所以我不应该使用这些库。
谢谢。
应该
也是Kaan Yamanyar Differences between DOM, SAX or StAX的博客文章。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
5年前关闭。
Improve this question
我正在使用Apache Tomcat开发RSS供稿聚合器。我想知道使用哪个解析器来读取RSS feed。我应该使用DOM,SAX还是StAX?我知道有一些特定的库可以读取Java的RSS feed,但是由于这是一个大学项目,所以我不应该使用这些库。
谢谢。
最佳答案
这主要取决于您的需求。每个都有自己的功能。
DOM-将整个内容拉入内存并在内存中四处走动。适合用于处理复杂事物的较小的XML块。 XSLT使用DOM。
SAX-在XML到达时走动,以观察它们飞过的事物。适用于大量数据或相对简单的处理。
StAX-与SAX非常相似,但是您不对流中发现的事件做出响应,而是通过xml进行迭代-请参见When should I choose SAX over StAX?来讨论哪种方法最好。
Parsing XML using DOM, SAX and StAX Parser in Java-Mohamed Sanaulla进行了精彩的讨论。注意:他的SAX解析器有一个问题-他应该附加字符,而不是替换字符,因为字符数据是累积的并且可能成块到达。
content = String.copyValueOf(ch, start, length);
应该
content += String.copyValueOf(ch, start, length);
也是Kaan Yamanyar Differences between DOM, SAX or StAX的博客文章。
关于java - DOM,SAX和StAX XML解析器之间有什么区别? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57333193/
10-10 16:33