XML文档解析技术

来源:互联网 发布:python的ide哪个好 编辑:程序博客网 时间:2024/05/22 15:29

         今天学习的是关于XML的文档解析技术,其主要API分为:DOM(一种基于树结构的API)和DOM(一种基于事件驱动的API)。

         二者的区别本质区别其实是二者对于XML文档的读取方式。DOM是把XML文档整个读取,以树结构在内存中表示。而SAX只是根据一定的条件部分读取XML文档的一部分。所以这就造成了二者的区别,DOM能对XML进行从结构上的修改,而且相对SAX来说他对XML文档的整体遍历更灵活方便,但是相应的因为是整体读取XML文档,其占用的内存空间更大,消耗内存资源。所以就有了SAX,他是部分读取XML文档,如果我们只是期望对XML进行部分操作时用的就是SAX

         基于以上两套API,我们常用XML解析器包就有了JAXPJDOMDOM4J。其中JAXPJava API for XML ,但其效能低下,一般不做使用。JDOM是对SAXDOM进行整合,进行一定优化,在高效简单的基础上进一步弥补DOMSAX在实际应用中的不足,虽然其本身操作简单,但是在处理大文档时性能表现不佳。所以现在常用的是DOM4J,他是一个开源易用的库,支持XMLXPathXSLT。采用了Java集合框架并完全支持DOM,SAXJAXP,本身提供大量的接口,所以很灵活。

 

 

原创粉丝点击