Javaweb-xml基础1(学习笔记)
XML技术除了用于保存有关系的数据之外,还经常用作软件配置文件,以描述程序模块之间的关系。
在一个软件系统中,为提高系统的灵活性,它所启动的模块通常有其配置文件决定:
--例如一个软件在启动时,它需要启动A、B这两个模块,而A、B这两个模块在启动时,又分别需要A1、A2和B1、B2模块的支持,为了准确描述这种关系,此时使用XML文件最为合适不过。
--------------------------------------------------------------------------------
一、语法
一个XML文件分为如下几部分内容:
文档声明;元素;属性;注释;CDATA区、特殊字符;处理指令(processing instruction)
--在编写XML文档时,需要先使用文档声明,声明XML文档的类型。
①最简单的声明语句:<?xml version= “1.0” ?>
②用encoding属性说明文档的字符编码:<?xml version= “1.0” encoding=”GB2312”?>(解决中文乱码问题)
③用standalone属性说明文档是否独立:<?xml version= “1.0” encoding=”GB2312”standalone=”yes”?>
----------------------------------------------------------------------------------
二、实例说明
新建一个.xml文件,文件打开方式为记事本方式,在文件中输入如下内容;
<?xml version="1.0"encoding="gb2312" ?>
<soft>
<a>
<a1>中国</a1>
<b1></b1>
</a>
<b>
<a2></a2>
<b2></b2>
</b>
</soft>
保存后,选择打开方式为IE浏览器。
--里面需要注意的小知识点:
①通常我们的encoding属性使用UTF-8,而不是国标;
②采用记事本保存时文件时,编码格式会默认为ANSI,但当我们将文档说明语句中的字符编码设置为UTF-8时,保存文件时就需要更改它的默认编码,将其改为UTF-8,否则IE浏览器会拒绝打开。而使用myeclipse时,它会根据我们所编写的文件自动更新文件所保存的编码格式,所以使用浏览器打开文件时不会报错。
③standalone=“no”时,即文档设置为非独立时,我们同样可以打开文件,而不会拒绝打开,说明IE浏览器解析工具没有关注这个独立性属性。
------------------------------------------------------------------------------------
三、元素
①XML元素指XML文件中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下书写形式。
--包含标签体:<a>www.baidu.com</a>
--不包含标签体:<a></a>,简写为<a/>
②一个标签中也可以嵌套若干个子标签,但所有的标签必须合理地嵌套,绝对不允许交叉嵌套。
--<a>welcome to<b>www.baidu.com</a></b>
③格式良好的XML文档必须有且仅有一个根标签,其他标签都是这个根标签的子孙标签。
④对于XML标签中出现的所有空格和换行,XML解析程序都会当作标签内容进行处理。所以使用换行和缩进的方式让文件清晰可读的书写习惯在这里并不适用。
⑤一个XML元素可以包含字母、数字以及一些其他可见的字符。
--区分大小写;不能以数字或下划线开头;不能以xml开头(XML、Xml);不能包含空格;名称中间不能包含冒号(:)
-------------------------------------------------------------------------------------
四、属性
①一个标签可以有多个属性,每个属性都有自己的名称和取值;
②属性值一定要用双引号或单引号引起来;--<input name="text">
③定义属性必须遵循与标签相同的命名规范;
④标签属性所代表的信息也可以被改成子元素的形式来描述;
eg.<input>
<name>text</name>
</input>
--------------------------------------------------------------------------------------
五、注释
①声明之前不能有注释;
②注释不能嵌套;
注释里面不能有注释<!--局部注释-->
--------------------------------------------------------------------------------------
六、CDATA区
在编写XML文件时,有些内容可能不希望解析器执行,而是当作原始内容处理。
此时可以把这些内容放在CDATA区里,此时XML解析程序不会处理这些内容,而是直接原封不动的输出。
语法:<![CDATA[内容]]>,此时内容不会被解析,原始内容直接输出,不会当作标签进行处理
--------------------------------------------------------------------------------------
七、转义字符
对于一些单个字符,若想显示其原始样式,也可以使用转义的形式予以处理。
&|&
<|<
>|>
"|"
'|'
--前两者的区别:对程序来讲是不同的,输出给人看的时候使用转义,让程序得到原始数据要使用CDATA
--------------------------------------------------------------------------------------
八、处理指令
简称PI,用来指挥解析引擎如何解析XML文档内容。
--在XML文档中可以使用xml-stylesheet指令,通知XML解析引擎,应用css文件显示xml文档内容。
eg.<?xml-stylesheet type="text/css" href="1.css"?>
处理指令必须以“<?”作为开头,以“?>”作为结尾。声明语句是最常见的一种处理指令。
.xml文件内容:
<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/css"href="1.css"?>
<soft>
<a>
<a1 id="a1">狗</a1>
<a2 id="a2">猫</a2>
</a>
<b>
<b1 id="b1">兔</b1>
<b2 id="b2">鼠</b2>
</b>
</soft>
1.css文件内容:
#a1{
font-size:300px;
color:red;
}
#a2{
font-size:200px;
color:blue;
}
#b1{
font-size:100px;
color:green;
}
#b2{
font-size:20px;
}
大小和颜色的设置,不填写颜色表示采用默认颜色,默认颜色为黑色。