XML解析方法
1、树结构
-DOM:Document Object Model文档对象模型,擅长(小规模)读写
2、流结构
-SAX:simple API for XML流机制解释器(推模式)擅长读
-Stax:the Streaming API for XML流机制解释器(拉模式)擅长读
DOM是W3C处理XML的标准API
-直观易用
-处理方式是将XML整个作为类似树结构的方式读入内存中以便操作及解析,方便修改
-解析大数据量的XML文件,会遇到内存泄漏及程序崩溃的风险
SAX(simple API for XML)
-采用事件/流模型来解析XML文档,更快速更轻量
-有选择的解析和访问,不像DOM加载整个文档,内存要求较低
-SAX对XML文档的解析为一次性读取,不创建/ 不存储文档对象,很难同时访问文档中的多处数据
-推模型,当他每发现一个节点就引发一个事件,而我们需要编写这些事件的处理程序。关键类:DefaultHandle
Stax(Streaming API for XML)
-流模型中的拉模型
-在遍历文档时,会把感兴趣的部分从读取器中拉出,不需要引发事件,允许我们选择性的处理节点。这大大提高了灵活性,以及整体效率
-两套处理API
1、基于指针的API,XMLStreamReader
2、基于迭代器的API,XMLEventReader