Dom与Sax,stax相比它们的优缺点是什么?

来源:互联网 发布:游戏多核优化的多吗 编辑:程序博客网 时间:2024/05/20 06:09

DOM:处理大型文件时其性能下降的非常厉害。这个问题是由DOM的树结构所造成的,这种结构占用的内存较多,而且DOM必须在解析文件之前把整个文档装入内存,适合对XML的随机访问,即DOM可以访问任何一个节点,要将所有资源全部加载,比较耗内存,可以修改。 

SAX:不现于DOM,SAX是事件驱动型的XML解析方式。它顺序读取XML文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理XML文件,适合对XML的顺序访问,即SAX只能顺序读,不可随意访问,不可写,但速度快。

STAX:Streaming API for XML (StAX)