1.xml简介
xml(Extensible Markup Language
)可扩展的标记语言,是w3c于1998年发布的,使用它来简化Internet的文档信息传输。与HTML语法类似,但比HTML语法更加严谨。最初在w3c发布xml时是使用xml来取代html,但因为各种历史原因以及xml的严格的规范并没有最终取代HTML,而xml虽然没有取代HTML,但在另外的领域确占领的一席之地。
xml主要有以下使用方向:
1.作为配置文件。xml可以利用自身的优势,可以自定义标签,使用标签可以描述各种数据格式。我们熟悉的struts2的配置文件,hibernate的配置文件等都是使用xml。
2.作为数据库存储数据。xml可以作为数据库来存储数据。我们使用java可以对xml进行解析。以此来存储数据。
3.作为异构平台之间的数据交互的数据传输格式。xml是一种跨平台的数据格式。不依赖与任何平台。因此作为数据传输格式可以在任何平台之间传输。
2.xml基本语法
2.1 定义xml头信息
必须以下面代码为开始行,version指定xml的版本,这里的版本只能指定为1.0,属性值必须使用双引号引用。encoding指定xml所使用的编码。encoding编码要和文件的编码保持一致,否则容易出现乱码问题。
<?xml version="1.0" encoding="utf-8" ?>
2.2 定义标签
标签是xml的最基本的组成单元。标签使用<>中嵌套名称的方式来定义。例如<font>。每一个开始标签都要有一个结束标签</font>。标签的名称中可以使用任意字符。标签可以进行嵌套。
标签之间的嵌套必须按照层级来进行嵌套。不能跨层级嵌套。
一个文档必须有且只有一个跟元素。
<html>
<head>
<title>Hello</title>
</head>
<body></body>
<html>
正确的样式
<html>
<head>
<title>Hello
</head>
</title>
<body></body>
<html>
错误的样式
2.3 定义属性
每个标签中可以定义属性。使用如下方式
<font color="red"></font>
表示在font标签中定义了一个color属性。这里属性名称可以任意起名。使用“=”来给属性赋值,属性值必须以双引号包裹。属性可以有多个。
2.4 xml注释
xml的注释和HTML注释相同。
<!-- 这是xml的注释 -->
2.5 CDATA区
在xml中,所有的文本都被解析。
只有 CDATA 区段(CDATA section)中的文本会被解析器忽略。
那么我们如果需要在xml中定义一些特殊的字符不希望被解析,那么我们就可以使用CDATA区
。
<![CDATA[
<html></html>
]]>
2.6 转义字符
如果我们想使用<,直接使用就被解析为了xml的标签的开始标签,但我们依然要使用<作为普通字符,就需要使用转义字符。下面是特殊字符对应的转换表
<
|
<
|
小于
|
>
|
>
|
大于
|
&
|
&
|
和号
|
'
|
'
|
省略号
|
"
|
"
|
引号
|