1.DOMjava
DOM的优点主要表如今:易用性强,使用DOM时,将把全部的XML文档信息都存于内存中,而且遍历简单,支持XPath,加强了易用性。
DOM的缺点主要表如今:效率低,解析速度慢,内存占用量太高,对于大文件来讲几乎不可能使用。另外效率低还表如今大量的消耗时间,由于使用DOM进行解析时,将为文档的每一个element、attribute、processing- instrUCtion和comment都建立一个对象,这样在DOM机制中所运用的大量对象的建立和销毁无疑会影响其效率。程序员
2. SAX性能
为解决DOM的问题,出现了SAX。SAX ,事件驱动。当解析器发现元素开始、元素结束、文本、文档的编码
开始或结束等时,发送事件,程序员编写响应这些事件的代码,保存数据。优势:不用事先调入整个文档,占用资源少;SAX解析器代码比DOM解析器代码小,适于Applet,下载。缺点:不是持久的;事件事后,若没保存数据,那么数据就丢了;无状态性;从事件中只能获得文本,但不知该文本属于哪一个元素;使用场合:Applet;只需XML文档的少许内容,不多回头访问;机器内存少spa
3.JDOM开放源代码
为减小DOM、SAX的编码量,出现了JDOM;优势:20-80原则,极大减小了代码量。使用场合:要实现的功能orm
简单,如解析、建立等,但在底层,JDOM仍是使用SAX(最经常使用),DOMxml
4.DOM4J对象
DOM4J 是一个很是很是优秀的Java XML API,具备性能优异、功能强大和极端易用使用的特色,同事件
时它也是一个开放源代码的软件。现在你能够看到愈来愈多的 Java 软件都在使用 DOM4J 来读写 XML
前面写了4中关于java解析XML的方法,咱们看到,利用以树状结构解析xml的居多,可能便于咱们对xml作相应的操做,可是这些方法广泛就是比较消耗资源,对内存有必定的要求!