XML是什么
- XML的全称是Exensible Markup Language,可扩展标记语言
- 编写XML就是编写标签,与HTML非常相似
- 良好的人机可读性
XML与HTML的比较
- XML与HTML非常相似,都是编写标签
- XML没有预定义的标签,HTML存在大量预定义的标签
- XML重在保存与传输数据,HTML用于显示信息
XML的用途
- 作为应用配置文件
- 用于保存程序产生的数据
- 网络间的数据传输,利用soap协议
XML文档结构
- 第一行必须是XML声明
- 有且只有一个根节点
- XML标签的书写规则与HTML相同
XML声明
- XML声明说明XML文档的基本信息,包括版本号与字符集,写在XML第一行
<?xml version="1.0" encoding="UTF-8"?>
XML标签书写规则
合法的标签名
- 标签名要有意义
- 建议使用英文小写字母,单词之间使用
-
分割 - 建议多级标签之间不要存在重名的情况
适当的注释与缩进
- 更容易阅读
合理使用属性
- 具有唯一性的值可以作为属性
处理特殊字符
<
和>
<
和>
CDATA标签
- CDATA指的是不应由XML解析器进行解析的文本数据
<![CDATA["content"]]>
有序的子元素
- 在XML多层嵌套的子元素中,标签前后顺序应保持一致
XML语义约束
- XML文档结构正确,但可能不是有效的
- XML语义约束有两种定义方式,DTD和XML Schema
Document Type Definition
- 文件扩展名为 .dtd
- 在XML中使用
<!DOCTYPE>
标签来引用DTD文件
XML Schema
- 文件扩展名为 .xsd
- 比DTD更为复杂,提供了更多功能
- 提供了数据类型,格式限定,数据范围等特性
- 是W3C标准
DOM文档对象模型
- Document Object Model 定义了访问和操作XML文档的标准方法,DOM把XML文档作为树结构来查看,能够通过DOM树来读写所有元素
Dom4j
- 一个易用的,开源的库,用于解析XML,它应用于Java平台,具有性能优异,功能强大和及其易用的特点
- Dom4j将XML视为document对象
- XML标签被Dom4j定义为element对象
XPath路径表达式
- XML文档中查找数据的语言
- 掌握XPath可以极大地提高在提取数据时的开发效率
- 学习XPath本质就是掌握各种形式表达式的使用技巧