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

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

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

文档声明

最简单的声明语法:

<?xml version="1.0" ?>

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

<?xml version="1.0" encoding="GB2312"?>

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

<?xml version="1.0" encoding="GB2312" standal one="no" ?>

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

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

属性

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

<input name="text">

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

注释

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

CDATA区

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

<![CDATA[
    <it>
        <br/>
    </it>
]]>

转义字符
这里写图片描述

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

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

XML

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE 书架 SYSTEM "book.dtd">
<书架>
    <>
        <书名>Java</书名>
        <作者></作者>
        <售价>39.00</售价>
    </>
    <>
        <书名>JavaSprit</书名>
        <作者></作者>
        <售价>34.00</售价>
    </> 
</书架>

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

dom解析:
这里写图片描述

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

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值