因为有点事情耽误我一个星期的学习。今天我刚开始学javaweb部分,也不知从何学起,只好看着张孝祥老师的《深入体验javaweb开发内幕-核心基础》这本书,一点点从基础学起。
今天看了XML部分的内容,简单做了一些笔记。
若有不妥或者不正确的知识点,请博友一定给我指出来哦,非常感谢!
1、XML概述
1)、配置文件:就是记录应用程序的配置信息的文件。
2)、XML简介:是eXtensible Markup Language(可扩展标记语言)的缩写,是为了实现计算机之间的文档交换而设计的文档内容编写规范,它的语法与HTML非常相似。
3)、XML文档的根本作用就是要统一信息的结构,使文档对人和机器都可阅读,并且实现系统之间的相互通信。
4)、XML作为一种公订的。开放的标准,它为各商业公司的电子文档统一了格式,不受版权,专利,商业秘密或者其他种类的知识产权的限制,人人都可以拿它来开发软件。
5)、XML文档结构
XML的语法和HTML类似,也是一种标记语言,它通过使用标记来说明文本的意义和所代表的信息。XML文档的后缀名通常为.XML,当不等于所以采用XML语法的文件的扩展名都必须是.XML。标记可帮助文档说明文本的内容和所表示的信息。例如:
<书架>
<书>
<作者>张孝祥</作者>
<书名>深入学习JAVAWeb</书名>
<售价>60元</售价>
</书>
</书架>
上面的这种结构即称为文档结构树。
XML 也是结构化的,其结构化主要体现在一下两个方面:
①、每一个部分(每一个元素)都和其他元素有关联,这种关联就形成了树结构
②、标记本身的含义与它描述的信息相分离。
6)、XML与数据库的比较
XML与数据库一样具有存储信息的作用,可以认为一个XML文档就像数据库中一个表。事实上,一些没有数据库的小型网站就使用XML文件来存储其信息,如留言板系统中的留言。XML是一种文档,它具有三个要素:文档结构。文档数据和文档样式。
多个XML文档的元素之间还可以像数据库的表字段一样定义主外键关系,可以把XML文档集看成一个非常小型的数据库。XML比数据库更适合于人们阅读,它是一种通用存储格式,可以由一个应用程序交换给其他程序去处理,非常适合信息交换,但不适合大批量数据的存储和处理。
2、XML的基本语法
1)、文档声明:在一个完整的XML文档中必须包含一个XML文档声明,该声明必须位于文档的第一行,这个声明表示该文档是一个XML文档,以及遵循的是哪个XML版本的规范,最简单的XML文档声明语法如下:
<?xml version=”1.0” ?>
2)、Encoding 属性来明确指定文档所用的字符编码方式。Encoding属性默认的设置是Unicode编码。W3C的XML1.0里规范里规定,所有的XML解析器必须接受UTF—8和UTF-16 编码的Unicode字符,所以,符合XML规范的软件工具一定都支持这两种Unicode编码。
对于含有中文字符的XML,其中的字符可以采用unicode来编码或者CB2312(简体中文字符编码)编码来表示。
3)、Standalone 属性用于说明文档是否是独立的,如果将其设置为“yes”,则表示该文档没有依赖外面的任何文件而独立存在,属性设置为“no”时,则表示该文档依赖于外面的某个文件。默认值为“yes”。
注意:如果同时设置了encoding和standalone属性,standalone属性要位于encoding属性之后。
3、元素的定义
XML文档的主题部分由元素(Element)组成的,一个XML元素由一个标记来定义,包括开始和结束标记以及其中的内容。
<书名>java学习</书名>
其中<书名>和</书名>就是XML文档中的标记,标记的名称也就是元素的名称,在一个元素中可以嵌套若干子元素,没有嵌套在其他元素内的元素为根元素,根元素通常是XML文档中定义的第一个元素。
XML规范
XML元素的标记名称中可以包含字母,数字以及其他一些可见字符,但必须遵守下面的一些规范:
1)、区分大小写,如果开始标记是大写,那么结束标识也一定是大写
2)、不能以数字或者下划线开头。
3)、不能以字符组合xml开头
4)、不能包含空格
5)、名称中间不能包含冒号(:)。
为了使XML元素更容易阅读理解和操作,对XML元素的标记名称还有一些建议:
1)、不要使用“.”,因为在很多程序语言中,”.”用于引用对象的属性。
2)、最好不要用减号(-),而以下划线(_)代替,以避免与表达式中的减号元算符发生冲突。
3)、名称尽量简短,以减少XML文档的大小。
4)、名称的大小写尽量采用统一标准,要么全部大写,要么全部小写。
5)、名称可以使用非英文字符,例如中文,但是有些软件可能不支持非英文字符以外的字符,在使用时应考虑这种情况。
4、属性定义
可以为XML标签设置属性(Attribute),XML中的属性也是自己随便定义的,用于对标签进一步描述和说明,一个标签可以有多个属性,每个属性都有名称和取值,下面是一条使用属性的例子语句:
<售价 单元=”元”>58</售价>
属性值一定要用双引号或单引号引起来,否则将被视为错误。属性遵循的命名规范与标签相同,比如区分大小写。
属性可以改为用子元素来描述同样的信息,例如:
<售价>
<单位>元</单位>
<价格>58</价格>
</售价>
属性不易被扩充和被程序操作,但程序处理的速度比使用子元素快。
5、XML中的注释
<!- - 注释信息 - ->
<!- -
注释信息
- ->
注释可以用来解释文档中的某些部分的作用和功能,便于阅读和理解,或提示应注意的问题。
注意:XML声明只能作为XML文件中的第一行,所以不要把注释放在XML声明之前。注释不能嵌套使用。
6、空格和换行的处理
XML文本中出现的所以空格和换行,XML解析程序都要一个个如实地交个下游程序去处理。
7、CDATA区(character data的简写)字符数据
CDATA区指的是不想被解析程序解析的一片原始数据区,解析器不会对CDATA区中的内容进行解析,而是将这些数据原封不动地交给下游程序去处理,当要XML文档通常将Javascript之类的程序代码嵌入CDATA区中。
它以“<![CDATA[“开始,以”]]>”结束。
例如:<![CDATA[“www.baidu.com”]]>
8、特殊字符
在XML文档中,有些特殊字符需要用转义字符序列表示其原始字面意义,这类字符在XML中成为预定义实体
。当解析器碰到这样的字符时,不是把它当作一般的字符按其原始意义来处理。在XML文档中一共有5个预定义实体,
&---- &
<----<
>---->
“---"
‘---'