XML指可扩展性语言(EXtensible Markup Language),是独立于软件和硬件的信息传输工具
XML应用于web开发的许多方面,常用于简化数据的存储和共享
XML简化数据共享
XML简化数据传输
XML简化平台的变更
XML文档包含XML元素
7.1基本语法
XML元素指的是从开始标签直到结束标签的部分。元素可包含其他元素、文本或者亮着的混合物,元素也可以拥有属性。
<datasource id="db_oracle">
<property name="url">
jdbc:thin@192.168.0.26:1521:ltarea
</property>
<property name="dbUser">openlab</property>
<property name="dbPwd">open123</property>
</datasource>
XML元素可以再开始标签中包含属性,属性(Attribute)提供关于元素的额外信息。属性通常提供不属于数据组成部分的信息,但是对需要处理这个元素的应用程序来说却很重要。
XML属性必须加引号,属性值必须被引号包围,不过单引号和双引号均可使用。
如果属性值本身包含双引号,那么有必要使用单引号包围它,或者使用实体引用。
<datasource id="db_oracle">
...
</datasource>
XML对大小写是敏感的。XML要求每个元素必须由起始标签和关闭标签组成。关闭标签与起始标签的名字相同,写法上多一个“/”。XML要求必须有根元素,所谓根元素就是不被其它元素包围,并且根元素只能有一个。
实体引用,实体可以是常用的短语,字符。在XML中,有时实体内包含一些,如&<>"'等。这些均需要对其进行转义,否则会对XML解释器生成错误。
实体引用 | 字符 | 说明 |
< | < | 小于 |
> | > | 大于 |
& | & | 与字符(和字符) |
' | ' | 单引号 |
" | " | 双引号 |
7.2XML解析
SAX是一种XML解析的替代方法。相比于DOM,SAX是一种速度更快,更有效的方法。它逐行扫描文档,一边扫描一边解析。解析可以立即开始,速度快,没有内存压力。但不能对节点做修改。
DOM是W3C推荐的处理XML的一种方式。把xml文件在内存中构造树形结构,可以遍历和修改节点,但解析时间长。
dom4j是一个Java的XML API,是jdom的升级品,用来读写XML文件的。dom4j是一个十分优秀的JavaXML API,具有性能优异、功能强大和极其易使用的特点,它的性能超过sun公司官方的dom技术,同时它也是一个开放源代码的软件,可以在SourceForge上找到它。
7.3路径表达式
XPath是一门在XML文档中查找信息的语言。XPath可用来在XML文档中对元素和属性进行遍历。
斜杠(/)作为路径内部的分隔符,同一个节点有相对路径和绝对路径两种写法。
nodename(节点名称):表示选择该节点的所有子节点
“/”表示选择根目录
“//”:表示选择任意未知的某个节点
“@”:表示选择某个属性