xml 理解

本贴最后更新于 2208 天前,其中的信息可能已经斗转星移

简介

XML(可扩展标记性语言)提供了一种跨平台、跨网络、跨程序的数据语言描述方式。使用 XML 可以实现数据交换、系统配置、内容管理等常见功能。

两个问题

XML 和数据库区别

数据库提供了更强有力的数据存储和分析能力,例如:数据索引、排序、查找等,XML 仅仅是存储数据

XML 和 Html 区别

XML 的重点是数据的内容。HTML 的重点是数据的显示。他们设计时候的出发点就不同。XML 大小写敏感,所有的标记必须成对出现,Html 没有这要求。XML 可以定义自己的标签,而 Html 只能用预定义的标签

XML 构成

前导区

<?xmlversion="1.0" encoding="UTF-8" standalone="no"?>
他有 3 个属性:version(XML 版本),encoding(文字编码),standalone(是否独立运行)
standalone="yes"说明这个文档不需要 DTD 验证,只需要语法正确(不需要为有效的 XML 文档,只需要格式正规)

数据区

由根元素和子元素组成

XML 解析(SAX 和 DOM)

DOM 是文档驱动,SAX 是事件驱动

区别 |DOM|SAX
---|
操作 | 将所有文件读取到内存中形成 DOM 树,如果文件过大则无法使用 | 顺序读入所需的文件内容,不会一次性全部读取,不受文件大小的限制
访问限制 |DOM 树在内存中形成,可以随意存取 DOM 树的任何部分,没有次数限制 | 由于采用部分读取,只能对文件按顺序从头到尾解析一遍,不支持对文件的随意存取
修改 | 可以任意修改文件树 | 只能读取,不能修改
复杂度 | 易于理解,易于开发 | 比较复杂,需要自定义事件处理器
对象模型 | 系统为使用者自动建立 DOM 树,对象模型由系统提供 | 对象模型可以由开发者自己建立,更加灵活

XML 七大概念

元素,属性,名称空间,实体,注释,CDATA,处理指令

处理指令

<? 开头的就是处理指令,如 <?xml version="1.0" encoding="UTF-8" standalone="yes"?>

实体

实体就相当于变量

DTD

DTD 文档与 XML 文档就像类与对象的关系,就像数据库表结构与数据记录的关系

  • XML
    28 引用 • 59 回帖

相关帖子

回帖

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...