00 00Java Web开发之XML入门

1 XML简介

  • XML是指可拓展标记语言(eXtensible Markup Language),它是一种标记语言,很类似HTML,它被设计的宗旨是传输数据,而非显示数据。

  • XML标签没有被预定义,需要用户自行定义标签。

  • XML技术是W3C组织(World Wide Web Consortium,万维网联盟)发布的,目前遵循的是W3C组织于2000年发布的XML1.0规范。

  • XML被广泛认为是继Java之后在Internet上最激动人心的新技术。

  • XML是指可拓展标记语言(eXtensible Markup Language)
    |——标记型语言:html是标记型语言
    |————也是使用标签来操作
    |——可拓展:
    |————html里面的标签是固定的,每个标签都有特定的含义
    |————标签可以自己定义,可以写中文标签 <person></person><猫></猫>

  • XML用途
    |——html是用于显示数据,xml也可以显示数据(不是主要功能)
    |——xml主要功能,为了存储数据

  • xml是w3c组织发布的技术

  • XML有两个版本 1.0 1.1
    |——使用的都是1.0的版本,(1.1不向下兼容)

2 XML应用

  • 不同的系统之间传输数据
    |——qq之间数据传输
    |——画图分析
    XML应用场景一
  • 用来表示生活中有关系的数据
  • 经常用在配置文件
    |——比如连接数据库,肯定要知道数据库的用户名和密码,数据名称
    |——如果修改数据库信息,不需要修改源代码,只需要修改配置文件
    |——无需再次编译

3 XLM的文档声明

(1)创建一个文件,后缀名是.xml。
(2)如果写xml,第一步必须要有一个文档声明(写了文档声明之后,表示写xml文件的内容)
|——<?xml version="1.0" enconding="gbk"?>
|————文档声明必须写在第一行第一列。
(3)属性
|——version:xml版本,1.0(使用) 1.1
|——encoding:xml编码(gbk,utf-8,iso8859-1(不包含中文))
|——standalone是需要依赖其它文件 yes/no

<?xml version="1.0" encoding="gbk"?>
<person>
	<name>lks</name>
	<age>23</age>
</person>

4 XML中文乱码问题解决

<?xml version="1.0" encoding="utf-8"?>
<person>
	<name>骆开胜</name>
	<age>23</age>
</person>

上面代码在使用gbk格式保存的xml文件中会发生中文乱码问题。

解决方法:保存和打开时的编码格式保持一致。

5 XML元素的定义

(1)标签定义
|——标签定义又开始必须要有结束:<person></person>
|——标签没有内容,可以在标签内结束:<aa/>
|——标签可以嵌套,必须要合理嵌套:
|————合理嵌套:<aa><bb></bb></aa>
|————不合理嵌套:<aa><bb></aa></bb>,这种方式不正确。
|——一个xml中,只能有一个根标签,其他标签都是这个标签下面的标签
|——在xml中会把空格和换行都当成内容来解析,下面两段代码含义不一样。

<aa>lks</aa>

<aa>
	lks
</aa>

|——xml标签可以是中文
|——xml中标签的名称规则
|————xml代码区分大小写,例如<p><P>是不同的标签。
|————xml标签不能以数字和下划线开头。
|————不能以xml(XML或Xml等)开头。
|————xml标签不能包含空格和冒号。

6 XML属性的定义

(1)html是标记型文档,可以有属性。
(2)xml也是标记型文档,也可以有属性,如<person id1="aaa" id2="bbb"></person>
|——属性定义的要求:
|————a. 一个标签上可以有多个属性,如<person id1="aaa" id2="bbb"></person>
|————b. 属性名称不能相同,如错误示例<person id1="aaa" id1="bbb"></person>
|————c. 属性名称和属性值之间使用=,属性值使用引号包起来(可以是单引号,也可以是双引号)
|————d. 属性的命名规范和元素命名规范一致。

7 XML注释

(1)注释格式:<!--注释内容-->
|——注释不能嵌套
|——注释不能放在首行首列

8 XML特殊字符

以下是错误示例代码:

<?xml version="1.0" encoding="utf-8"?>
<person>
	<name>骆开胜</name>
	<age>23</age>
	<a>a<b</a>
</person>

如果想要在xml中显示a<b,此时不能正常显示,是因为将<当作标签了。
如果想要显示,需要对特殊字符<进行转义。下面是常见字符转义字符表:

特殊字符 替代符号
& &amp;
< &lt;
> &gt;
" &\quot;
&a\pos;

9 XML的CDATA区

(1)CDATA
|——可以解决多个字符都需要转义的操作 if(a<b && b<c && d<f) {},把这些内容放到CDATA区里面,就不需要转义了。
|——写法:`<![CDATA[ 内容 ]]>
|——把特殊字符,当作文本内容,而不是标签

10 XML的PI指令(处理指令)

(1)可以在xml中设置样式
(2)语法格式:<?xml-stylesheet type="text/css" href="some css path"?>
(3)设置样式,只能对英文标签名称起作用,对中文标签不起作用。
注意:xml常用于存储和传输数据,而不是显示数据。

11 XML约束简介

为什么需要约束?约束保持了数据的类型的统一性。
|——比如现在定义一个person的xml文件,只想要这个文件里面保存人的信息,比如name,age等,但是如果在xml文件中写了一个标签<猫>,发现也可以正常显示,因为其符合语法规范,但是猫肯定不是人的信息,xml的标签是自定义,需要技术规定xml中只能出现的元素,这个时候就需要约束。

<?xml version="1.0" encoding="gbk"?>
<person>
	<name>lks</name>
	<age>20</age>
	<>1000</>
</person>

xml的约束技术:常见两种约束dtd的约束和schema约束。

12 总结

  1. XML语法规则总结
    (1)所有XML元素必须有关闭标签。
    (2)XML标签对大小写敏感
    (3)XML文档必须有根元素(只有一个)。
    (4)XML的属性值须加引号。
    (5)特殊字符必须转义——CDATA。
    (6)XML中的空格、回车换行会解析时被保留。
    (7)XML必须正确的嵌套。
发布了77 篇原创文章 · 获赞 11 · 访问量 2646

猜你喜欢

转载自blog.csdn.net/weixin_43762330/article/details/104532457
00