几种解析xml文档的方式
实例:
example
content1
content2
1.Dom解析
通过dom解析后会生成一个如上图所示的树.
dom提供了一个Node接口该接口提供了很多增删改查节点的方法,而文档树中的所有对象都实现过这个接口。
DOM解析优点:十分便于增删改查的操作,只需要解析一次拿到dom对象后可以重复使用此对象。
缺点:解析过程比较慢,需要将整个文档都解析完成后才能进行操作。需要将整个树的内容都加载到内存中来,比较消耗内存,文档过大时,这种解析方式对内存的 损耗十分严重。
Dom4j是一个开放源代码的库,由JDOM分离出来,灵活性更好,需要导入jar包。市面上大多使用
2.SAX解析
解析器逐行扫描文档每一行,扫描至事件处理器(由开发人员实现,注册到解析器)
SAX解析优点:不需要等待整个xml加载到内存,解析到某个节点自动触发对应事件,不需要将整个xml文档加载至内存,内存损耗少
缺点:只能进行查询,每次解析只能处理一次,要再处理需要重新解析。