JSP开发(一):xml简介

tech2022-11-06  101

XML

​ 在实际开发中,由于不同语言项目之间数据传递的格式有可能不兼容,导致这些项目在数据传输时变得困难。为了解决这个问题,W3C组织推出了一种新的数据交换标准——XML,它是一种通用的数据交换格式,可以使数据在各种应用程序之间轻松地实现数据的交换。

一、XML概述

1.什么是XML

​ 在生活中,我们经常会遇到一些存在关联的数据,又比如说在数据结构中的树结构,或者说中国有很多省份,每个省份又有很多城市,这些城市可以用一张树状图来表示,但是对于程序而言,解析树结构是非常困难的,这时采用XML文件保存这种具有树状结构的数据是最好的选择。

​ XML是Extensible Markup Language的缩写,是一种类似于HTML的标记语言,称为可标记扩展语言,而HTML称为超文本标记语言。而这里所谓的扩展,指的是用户可以按照XML规则自定义标记。

<?xml version="1.0" encoding="UTF-8"?> <中国> <浙江> <城市>杭州</城市> <城市>金华</城市> </浙江> <河南> <城市>南阳</城市> <城市>郑州</城市> </河南> </中国>
注:如果发现该代码在网页中显示编码错误,可以查看另一篇文章,有相关的解法这里不再赘述。

在上面的代码中,第一行是XML的文档声明,下面的<中国><河北>是用户自己创建的标记,它们都可以称为元素,这些元素必须是成对出现的(与html类似),即包括开始标记和结束标记。例如当出现了<河北>这个标记时,后面也必须出现</河北>与之对应。<中国>被视为整个XML文档的根元素。在XML文档中,通过元素的嵌套关系可以很准确的描述具有树状层次结构的复杂信息。因此,越来越多的应用程序都采用XML格式来存放相关的配置信息,以便于读取和修改。

2.XML与HTML的比较

​ XML与HTML都是标记文本,他们在结构上大致相同,都是以标记的形式来描述信息。但是实际上它们有着本质的区别。

HTML被设计出来是用来显示数据的,XML被设计出来是为了传输和保存数据的。HTML是不区分大小写的,XML是严格区分大小写。HTML可以有多个根元素,XML有且只能有一个根元素。HTML中,空格是自动过滤的,而XML中空格则不会自动删除HTML中的标记是预定义的,而XML中的标记时可以根据需要自己定义的,并且可扩展

总的来说,XML并不是HTML的升级,也不是HTML的替代品,在大多数web应用程序中,XML用于数据传输,而HTML用于格式化并显示数据。

二、XML语法

1.文档声明

​ 在一个完整的XML文档中,必须包含一个XML文档的声明,并且该声明必须位于文档的第一行,这个声明表示该文档是一个XML文档,以及遵循哪个XML版本的规范。

<?xml 版本信息[编码信息] [文档独立性信息]?>

​ 从上面可以看出,文档声明以符号"<?“开头,以符号”?>“结尾,中间可以版本声明、编码信息以及文档独立信息。需要注意的是在”<“和”?“之间、”?“和”>“之间以及第一个”?"和xml之间不能有空格;另外中括号括起来的部分是可选的。

<?xml version="1.0" encoding="UTF-8"? standalone="yes"?>

以上是一段完整的文档声明,version属性表示XML的版本。目前最常用的是1.0版本。encoding属性用来说明XML文档所使用编码方式,默认情况下,XML使用的是UTF-8编码方式。standalone属性用来声明这个文档是否是独立文档,默认情况下,standalone属性的值为no,表示文档依赖于外部文件。

2.元素定义

​ 在XML文档中,主体内容都是由元素(Element)组成的。元素一般是由开始标记、属性、元素内容和结束标记构成,具体如下。

<城市>北京</城市>

​ 上面的示例中,"<北京>“就是XML文档中的标记,标记的地名也就是元素的名称。在一个元素中可以嵌套若干子元素。如果一个元素没有嵌套在其他元素内,则这个元素称为根元素。根元素是XML文档定义的第一个元素。如果一个元素中没有嵌套子元素,也没有包含文本内容,这样的元素称为空元素,空元素可以不使用结束标记。但必须在起始标记的”>“前增加一个正斜杠”/"来说明该元素是一个空元素,例如:<img></img>可以简写成<img/>

3.属性定义

​ 在XML文档中,可以为元素定义属性。属性是对元素的进一步描述和说明。在一个元素中,可以有多个属性,并且每个属性都有自己的名称和取值,具体如下:

<零售价 单位="元">54.2</零售价>

​ 在上面的示例中,<售价>元素中定义了一个属性“单位”。需要注意的是,在XML文档中,属性的命名规范同元素相同,属性值必须用双引号("")或者单引号(‘’)引起来,否则被视为错误。

4.注释

​ 如果想在XML文档中插入一些附加信息,比如作者姓名、地址和电话等信息,或者想暂时屏蔽某些XML语句,这时可以通过注释的方式实现,被注释的内容会被程序忽略而不被解析和处理,XML的注释和HTML注释写法基本一致,具体方法如下:

<!--注释信息-->

最新回复(0)