【对比SAX解析和DOM解析】
* 在使用DOM解析XMl文档时,需要读取整个XML文档,在内存中架构代表整个DOM树的DOcument对象,从而对XML文档进行操作,在这种情况下,如果XML文档特别大,就会消耗计算机大量内存,并且容易导致内存溢出。
* SAX解析允许在读取文档的时候,即对文档进行处理,不必等到整个文档装载完才会对文档进行操作。
【SAX解析介绍】
SAX采用事件处理的方式解析XML文件,利用SAX解析XMl文档,设计两个部分:解析器和事件处理器。
* 解析器可以使用JAXP的API创建,创建出SAX解析器后,就可以指定解析器去解析某个XML文档。
* 解析器采用SAX方式在解析某个XML文档时,它只要解析到XML文档的一个组成部分,都会去调用事件处理器的一个方法,解析器在调用事件处理器的方法时,会把当前解析到的xml文件内容作为方法的参数传递给事件处理器。
* 事件处理器由我们编写,通过事件处理器的方法的参数,就可以轻松地得到SAX解析器解析得到的数据,从而可以决定如何对数据进行处理。