XML是一种树形结构
通过结点的方式表示整个XML
sutdent.xml Document:文档结点 xml文件
students Element: 元素结点 使用<>的标签
number Attr: 属性结点 元素上属性名 = "属性值"
白昼 Text: 文本结点 元素之间的内容
DOM:Document Object Model:文档对象模型,把文档中的成员描述成一个个对象
使用Java代码操作XML 或者 JS代码操作HTML
DOM解析的特点
1.在加载的时候,一次性的把整个XML文档加载进内存,在内存中形成一颗树(Document对象).
2.以后使用代码操作Document,其实操作的是内存中的DOM树,和本地磁盘中的XML文件没有直接关系.
3.由于操作的是内存当中的dom,磁盘中xml当中的内容并没有变,要进行同步,让两边保持一致
(查询不需要同步,只有数据变化的时候,才需要同步)
4.缺点:若XML文件过大,可能造成内存溢出
DOM解析步骤
这里通过代码表示:
Sax解析介绍
逐行读取,基于事件驱动
优点:不占内存,速度快
缺点:只能读取,不能回写
DOM4j介绍
DOM4J是dom4j.org出品的一个开源XML解析包
dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件
越来越多的Java软件都在使用dom4j来读写XML,特别值得一提的是连Sun的JAXM也在用dom4j。这已经是必须使用的jar包, Hibernate也用它来读写配置文件。
老九学堂会员社群出品
原文:https://www.cnblogs.com/ljxt/p/11608984.html