您的位置:首页 > 编程语言 > Java开发

JAVA解析XML的四种方式比较

2015-04-20 19:54 246 查看
在解析XML文件时,一共有四种常见的方式供我们选择,它们分别是:DOM,SAX,JDOM和DOM4J。

其中,DOM和SAX是两种基础的解析方式,DOM不但适用于JAVA,也适用于其他各种语言,此外,适用这两种方法都不需要导入任何的JAR包。而,JDOM和DOM4J则是在上面两种基础的解析方式上扩展得来的,只有JAVA语言可以使用,并且需要导入相关jar包。

DOM解析会一次性的将XML文件全部读入到内存中,并且形成DOM树。优点是直观,便于理解,且易于修改,但缺点是每次都必须将整个XML文件读入内存,所以如果XML文件过于庞大,不适合使用DOM解析。

SAX解析是基于事件的解析,当程序遇到不同的标签时,会触发不同的方法,如startElement(),endElement(),startDocument(),endDocument()等。其对内存的消耗较少,如果解析的目标仅仅是获取标签内的信息,那么很适合使用SAX。但是,其编码过程相对复杂,且由于它总是按顺序挨个处理节点,所以如果想要同时处理多处节点数据,则不可以使用SAX。

JDOM相较于DOM,它只使用具体类而不使用接口,这样的做法一方面简化了使用的过程,但在另一方面也降低了其灵活性和扩展性。它的API中大量使用了Collections类。并且开放源代码。

DOM4J是在JDOM基础上创造出来的,它支持非常多的XML深度解析功能,也是目前非常流行的一种XML解析手段。它使用了接口和抽象基本类方法,具有性能优异,灵活性好,功能强大和十分易于使用的特点。它同样开放了源代码,并且在性能上要强于JDOM。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: