JavaWeb——XML
一、XML
1. XML简介
- xml是可拓展的标记性语言。
- 用来保存数据,而且这些数据具有自我描述性。
- 可以做为项目或者模块的配置文件。
- 还可以做为网络传输数据的格式(现在JSON为主)。
2. XML语法
2.1 文档声明
2.2 XML注释
- HTML和XML注释一样。
2.3 元素(标签)
- XML元素指的是从(且包括)标签直到结束标签的部分。
- 元素可包含其他元素,文本或两者的混合物。元素也可以拥有属性。
- XML的命名规则:
- 名称可以含字母、数字、其他字符。
- 名称不能以数字或标点符号开始。
名称不能以字符xml(XML等)开始(实际上是可以的)。- 名称不能包含空格。
- XML中的元素也分成单标签和双标签。
- XML对大小写敏感。
- 所有XML元素都须有关闭标签。
- XML文档必须有唯一的根元素。
- XML中的特殊字和HTML中一样。
2.4 属性
- 属性可以提供标签的额外信息。
- 每个属性的值必须用引号括起来,单引号双引号都可以。
2.5 文本区域(CDATA区)
3. XML解析技术
- 不管是html文件还是xml文件它们都是标记型文档,都可以使用w3c组织制定的Dom技术来解析。
- 早期JDK为我们提供了两种xml解析技术:DOM和Sax简介(已经过时,但我们需要知道这两种技术)。
- SAX解析,它跟W3C制定的解析不太一样。它是以类似事件机制通过回调告诉用户当前正在解析的内容。 它是一行一行的读取xml文件进行解析的。不会创建大量的Dom对象。所以它在解析xml的时候,在内存的使用上和性能上。都优于Dom解析。
- 第三方的解析:
- jdom在Dom基础上进行了封装。
- dom4j又对jdom进行了封装。
4. dom4j解析技术
我们需要使用dom4j就需要到dom4j官网下载dom4j的jar包。
dom4j目录介绍:
- docs目录:是文档目录,第三方类的学习文档,里面的index.html文件即为Dom4j的文档。
- lib目录:为dom4j需要依赖其他第三方类库。
- src目录:是第三方类库的源码目录。
5. dom4j编程步骤
- 先加载xml文件创建Document对象。
- 通过Document对象拿到根元素对象。
- 通过
根元素.elelemts;
可以返回一个集合,这个集合里放着所有指定的标签名的元素对象。 - 找到修改的元素,进行相应的操作。
- 保存到硬盘上。
5.1 获取Document对象
- 创建一个lib目录,并添加dom4j的jar包。并添加到类路径。
- 需要解析的books.xml文件内容。
- 解析获取Document对象的代码。
5.2 遍历标签且获取所有标签中的内容
- 通过创建SAXReader对象,来读取xml文件,获取Document对象。
- 通过Document对象。拿到XML的根元素对象。
- 通过根元素对象。获取所有的book标签对象。
- 遍历每个book标签对象。然后获取到book标签对象内的每一个元素,再通过getText()方法拿到起始标签和结 束标签之间的文本内容。
- 运行结果如下。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.