H5W3
当前位置:H5W3 > 其他技术问题 > 正文

Java 解析XML 的技术有哪些?

求专业解答!对性能、功能、使用方式及应用场景对比介绍!

回答:

主要有基于树的DOM
和基于事件模型的SAX

前者是将整个文档解析成一颗树型结构,通过API可以在各节点上任意访问,优点就是操作方便,缺点是因为要完整解析文档,所以在解析超大文档时内存占用较大。
后者是一种流式解析,顺序读取并解析文档,在解析到特定元素的时候通过用户定义的解析事件句柄来执行操作,可以看作一种“推送”的形式。与DOM相反,SAX的优点就是内存占用低,因为不需要完全解析文档,速度更快,但是由于是基于事件模型,所以用户在编程时会有一种“被动”的不适感。

可以看看这篇介绍文章: http://wishlife.iteye.com/blog/181865

另外,还有一种是两类的折中叫做StAX:
http://www.ibm.com/developerworks/cn/xml/x-tipstx4/

回答:

dom4j吧。多数开源框架用于xml解析的选择

本文地址:H5W3 » Java 解析XML 的技术有哪些?

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址