可扩展标记语言XML(Extensible Markup Language)

可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。

什么是可扩展标记语言?
可扩展标记语言是一种很像超文本标记语言的标记语言。
它的设计宗旨是传输数据,而不是显示数据。
它的标签没有被预定义。您需要自行定义标签。
它被设计为具有自我描述性。
它是W3C的推荐标准。

文档声明

最简单的声明语法:

用encoding属性说明文档的字符编码

用standalone属性说明文档是否独立

XML元素
元素指XML中出现的标签,一个标签分为开始标签和结束标签,一个标签有如下几种书写形式:

包含标签体 : <a>www.dasfs.coma>
不包含标签体:<a>a> 简写为<a/>

属性

一个标签有多个属性,每个属性都有自己的名字和取值,例如

<input name="text">

属性值用双引号或者单引号引起来

注释

XML文件中注释采用: < !–注释– >格式

CDATA区

在编写XML文件时,有些内容可能不想让解析引擎解析执行,而是当做原始内容进行处理。遇到这种情况,可以把这部分内容放在CDATA区里,对于CDATA区域的内容,XML解析程序不会处理,而是直接原封不动的输出。语法:


        
]]>

转义字符
可扩展标记语言XML(Extensible Markup Language)_第1张图片

XML约束
在XML技术里,可以编写一个文档来约束一个XML文档的书写规范,这称之为XML约束。常用的约束技术:
(1)XML DTD(一般框架的作者会使用)
(2)XML Schema

<!ElEMENT 书架(书+)>
    <!ELEMENT 书(书名,作者,售价)>
    <!ELEMENT 书名(#PCDATA)>
    <!ELEMENT 作者(#PCDATD)>
    <!ELEMENT 售价 (#PCDATA)>

XML



<书架>
    <>
        <书名>Java书名>
        <作者>作者>
        <售价>39.00售价>
    >
    <>
        <书名>JavaSprit书名>
        <作者>作者>
        <售价>34.00售价>
    > 
书架>

XML解析方式分为两种:dom和sax
dom:(Document Object Model,即文档对象模型)
sax(Simple API for XML)
XML解析开发包:Jaxp(sun),Jdom,dom4j

dom解析:
可扩展标记语言XML(Extensible Markup Language)_第2张图片

把文档中的每一个结点都变成一个对象,根据对象之间的一个关系,在内存中架构出一个类似对象树,缺点是对内存的消耗比较大(要求文档不可以太大),优点是对文档增减改查比较方便

sax解析:由上到下读取,每读取一行便处理一行,因此仅适合数据读取,占用内存少,解析速度快,不适合进行增删改查

你可能感兴趣的:(JavaWeb)