up:: web开发基础内容概述

XML部分主要内容有:

● 什么是XML,XML常用的实用场景;

● XML语法规则;

● XML语义约束;

● 如何利用Java解析XML文件;(这儿会接触到DOM(文档对象模型))

● XPath路径表达式;(这个表达式可以简化XML数据提取的过程;同时这个表达式是XML中独有的)



一:XML概念与用途

XML概念:

XML没有预置的标签,其中的标签都是我们自己起的;

XML和HTML的比较

例如:


XML用途:

● XML可以作为Java程序的配置描述文件:

这些大概率需要经常修改配置项如果写在Java程序中,每次修改都需要重新编译程序很麻烦;所以将这些配置项写在配置文件中;

以后遇到的Java框架,很多在底层进行应用程序配置时,都使用的XML来存储配置信息;

● 用于保存程序产生的数据

XML拥有良好的人机可读性;可以利用XML进行数据的存储和转移;

● 程序底层的网络传输过程中,XML是标准的数据传输格式

如下协议,就是利用XML进行的书写,在数据传输过程中,发送方可以把数据弄成XML格式,接收方按照XML的格式解析就可以获取到数据;


二:XML文档结构

XML文档必须包含三个要素:

(1)第一行必须是XML声明;

两个属性,

version :常见的有1.0和1.1,平时一般用1.0;

encoding :编码方式;UTF-8这种编码方式可以很好的兼容中文;ISO8859-1编码方式不支持中文;

(2)整个文档有且只能有一个根节点;

(3)XML标签的书写规则与HTML完全相同;


使用Eclipse创建XML文件:


一个XML文件示例:

    <?xml version="1.0" encoding="UTF-8"?>
    <!-- 人力资源管理系统-->
    <hr>
    	<employee no="3306">   <!-- 标签和属性尽量起的有意义,做到见名知意-->
    		<name>张三</name>
    		<age>31</age>
    		<salary>4000</salary>
    		<department>    <!-- 标签可以嵌套-->
    			<dName>会计</dName>
    			<dAddress>4楼103室</dAddress>
    		</department>
    	</employee>
    	<employee no="3307">
    		<name>李四</name>
    		<age>29</age>
    		<salary>5000</salary>
    		<department>
    			<dName>工程部门</dName>
    			<dAddress>4楼105室</dAddress>
    		</department>
    	</employee>
 
    </hr>

IDE会帮助检查XML是否书写正确,当XML编写正确,没有语法错误时,IDE没有报错提示;

同时可以用你Google浏览器打开书写好的XML文件:

一旦XML有错误:

IDE会报错:

Google浏览器打开的效果:


三:XML标签书写规则

(1)合法的标签名:


(2)适当的注释与缩进


(3)合理使用属性

下面的sn属性和category属性都是自己起的名字;

通常会把标签唯一的身份信息,如id或sn等设置成 属性 (普遍接受的习惯);而如下商品的“XX空调”等常见的,会重复的设置成 节点 ;标签的信息如无必要,还是尽量设置成节点;


(4)特殊字符与CDATA标签

解决方案1:使用实体引用:

注意:(1)实体引用,带分号;(2)实体引用只适用于特殊符号比较少的情况;

解决方案2:使用CDATA标签:

如下面的XML:<lesson>是外层标签,<content>是外=内层标签;里面蓝色方框中有很多特殊字符,如果像把蓝色方框中的内容都作为<content>标签的节点内容:

解决方案如下图:


(5)有序的子元素

如下,在所有<itme>中,里面的子标签顺序都是一致的,第一个是<name>标签,第二个是<price>标签…;这不是强制规范,但这是个约定俗成的习惯