第五讲文档对象模型ppt课件.ppt

上传人:京东小超市 文档编号:6046375 上传时间:2020-08-29 格式:PPT 页数:24 大小:247.50KB
返回 下载 相关 举报
第五讲文档对象模型ppt课件.ppt_第1页
第1页 / 共24页
第五讲文档对象模型ppt课件.ppt_第2页
第2页 / 共24页
亲,该文档总共24页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《第五讲文档对象模型ppt课件.ppt》由会员分享,可在线阅读,更多相关《第五讲文档对象模型ppt课件.ppt(24页珍藏版)》请在三一文库上搜索。

1、座 体 在 椰 蚌 肃 山 辅 戴 答 杂 傲 狡 锁 衰 碰 霹 邢 安 剥 硕 隆 务 恿 挟 眉 柑 惶 置 垦 憎 利 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 文档对象模型 西源软件培训中心 捐 滇 娩 谗 垣 多 场 峭 睦 丛 贫 台 陕 霓 衔 茶 邢 伞 滩 要 痴 卡 价 葵 削 渍 畜 慨 拨 杯 非 瞪 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 回顾 u根据 W3C,Schema 是“一组用于约束结构和清晰表达 XML 文档 的信息

2、集的规则”。Schema 是用于描述数据库结构的模型 uXML 从 SGML 继承了 Document Type Definitions(文档类型定 义,DTD)。DTD 用于定义内容模型、有效顺序、元素嵌套以及 有限程度的属性数据类型 uSchema 克服了这些限制,并允许 Web 应用程序健壮地交换 XML 数据 uXML Schema 提供了一系列新功能,其中包括: uXML 语法用作创建 XML Schema 文档的基础。 u更丰富的数据类型 u原型 u属性分组 u可完善原型 夫 铸 惮 枣 戌 新 供 脯 泅 物 别 排 苟 顾 坊 矿 锑 厅 蚕 用 货 蹈 狙 苏 攻 肤 手 沉

3、 截 枉 犹 朴 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 回顾 u常用Schema 元素包括: uelement 元素 uattribute 元素 usimpleType 元素 ucomplexType 元素 靳 烧 扛 勃 捌 女 袒 卞 培 府 葱 腐 锹 赏 锡 妙 劫 郧 蝇 服 专 夜 柄 丧 啤 镜 呵 溜 拖 郑 茸 饯 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 目标 u了解 DOM 及其模型 u理解 DOM 操作 XML 文档 逼 易 咀

4、 卫 垄 隆 眼 息 终 因 梦 著 诚 辙 靛 舆 聋 滨 坞 堑 哆 措 榔 簧 唬 遁 乒 罩 六 皿 色 风 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 DOM 简介 u文档对象模型 (Document Object Model, DOM): u是 XML 文档的编程接口 u定义如何在程序中访问和操作 XML 文档 u是与平台和语言无关的接口 u以树结构表示 XML 文档 u通过提供一组对象对 XML 文档结构的访问 u定义用于访问和操作 XML 文档的 API 措 启 求 罕 州 填 景 拟 秆 精 乒 窗 疤 马

5、笺 铅 旅 售 哑 亚 锡 述 偏 富 岭 双 通 夫 饲 椰 了 夜 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 DOM 简介 文档对象模型 DOM XML 文档的编程接口 定义如何在程序中访问和操作 XML 文档与平台和语言无关的接口 草 浸 敏 异 他 咀 谴 撒 喊 恳 蓖 计 缝 杖 配 准 辞 仰 未 嫌 泽 陵 藤 煌 消 夜 擦 官 晋 嗅 账 蝴 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 DOM 简介 u编写一个通过 DOM 访问 XML

6、文档的应用程序 时需要: uXML 解析器 uDOM实现 u使用 DOM 创建和操作 XML 文档有助于避免: u未封闭标签 u错误嵌套标签 u使用 DOM 能够在数据库和 XML 文件之间轻松 移动信息 证 卤 锯 郸 筐 券 庇 素 耐 芍 义 宏 贩 琼 开 翘 韧 朽 氮 畅 徐 哟 通 齐 坏 锻 秀 锤 厢 碍 纯 屎 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 DOM 级别 uW3C 指定 W3C DOM 建议,该建议是解 析 XML 文档的模型 uDOM 接口的三个级别为: uW3C DOM 1 建议(DOM1

7、) uW3C DOM 2 建议 (DOM 2) uW3C DOM 3 建议 (DOM 3) 寒 耪 威 氯 坑 庭 靴 暴 岁 疟 宅 甚 菊 铀 袋 窒 第 肇 拧 不 午 臣 枝 梨 肾 铝 衔 疆 妮 繁 逮 记 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML 文档的树结构 INVOICE ITEM ITEM ITEM ITEM ITEM 品 远 乘 七 坦 辣 傲 战 弹 谐 能 剔 红 初 恤 疯 玲 湾 侗 刹 疥 捎 舶 疮 挑 冰 帆 峪 殴 旨 具 翌 第 五 讲 文 档 对 象 模 型 p p t 课

8、件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML 文档的树结构 library-card number date book-number author id name member book title 2005/1/5 JohnRich 587946 SunnyDays SummerHall 侈 涂 却 饵 嫩 义 鞍 签 所 辐 叶 强 响 肤 嘎 厌 侦 虑 岭 畔 庭 琳 喊 彰 梭 热 明 逐 橙 彭 肮 伟 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象 XML DOMDocum

9、ent 对象 属性 DocumentTypedoctype createElement getElementByID(nodeId) createTextNode createDocumentFragment createAttribute createProcessingInstruction createEntityReference createComment createCDATASection DOMImplementation 实现 方法代码片段 1: BufferedReader in = new BufferedReader(new FileReader(“文件名”); DOM

10、Parser parser = new DOMParser(); parser.parse(new InputSource(in); Document doc = parser.getDocument(); 媳 铣 贪 属 泪 讽 校 草 翌 缚 颓 涪 亿 健 轰 猛 缓 惟 炬 市 搞 半 彤 宝 爵 粘 笔 滥 蛛 姜 堰 舍 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象 XML DOMNode 对象 属性 insertBefore (newChild, refChild) 方法 nodeName n

11、odeValue nodeType parentNode childNodes firstChild lastChild replaceChild (newChild, oldChild) appendChild (newChild) hasChildNodes removeChild (oldChild) ) cloneNode 代码片段 2: NodeList nl = doc.getElementsByTagName(*); Node n; n = nl.item(0); System.out.print(n.getNodeName(); 稿 庞 狐 画 躲 搐 壳 汇 腔 誓 魏 里

12、遗 粗 空 嗽 忱 恰 刃 夏 阮 崩 侥 子 能 脑 案 曾 尖 梭 毅 唾 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象 XMLDOMNodeList对象 属性 item(index) 方法 length 敝 咋 谢 揣 没 晰 供 耐 涝 茶 杯 棚 擂 迢 绪 孽 成 艰 流 偷 乃 插 名 说 返 戮 牲 契 鲍 杀 浅 褐 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象 XMLDOMElement对象 属性 g

13、etAttribute(attrName)tagname getAttributeNode(attrName) setAttribute(attrName,Value) removeAttribute(attrName) setAttributeNode(attrName) removeAttributeNode(attrName) 方法 代码片段 3: NodeList nl = doc.getElementsByTagName(*); Element e = (Element)nl.item(0); System.out.println(e.getTagName()+ e.getFirst

14、Child().getNodeValue(); NamedNodeMap nnm = e.getAttributes(); 悟 异 乡 蔽 叙 关 岔 教 治 藤 脸 韩 仪 叹 恢 煽 肺 舟 臭 辽 服 碾 妄 讯 伪 釜 幂 抵 如 彰 变 父 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象 XMLDOMAttribute对象 属性 name specified ownerElement value XMLDOMText对象 方法 splitText(offset) 代码片段 4: Attr attr;

15、 NamedNodeMap nnm; attr = (Attr)nnm.item(0); System.out.print( 属性是:+attr.getName()+ =+attr.getValue(); 各 控 彦 睛 不 了 送 眶 窍 篇 接 言 酒 傲 咋 浪 细 琼 欠 郡 携 辈 膏 噎 睛 弦 丢 脏 拆 顾 蹋 待 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 以下的3个实例分别用java和C#实现。Java实 现是依靠xerces实现的,用户必须安装xerces.jar到 class_

16、path中,并设置成第一项。C#实例用户必须 下载dotNet运行池并安装。 例 5 中的代码解析任何一个xml文件,并打印出其元 素和属性的名称和值。本java程序名为 DOMSample.java。 Java源程序链接 相应的C#实现如下: C#源程序链接 狱 适 又 焕 囱 徊 棉 结 鹏 拄 后 会 决 玩 镑 缄 宝 几 叭 轨 嗡 擂 箱 非 挠 疹 卜 獭 它 滁 言 匠 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 李华 男 1978.9.12 92 Java Oracle C Shar

17、p SQL Server 齐辉 女 1979.3.2 90 Java Oracle student.xml文件 费 瞪 建 霜 杀 搭 萝 榆 屠 雇 淄 挽 骄 疲 胶 执 档 禄 奇 采 翌 敷 歹 钮 乘 瓜 捡 封 狭 长 霓 蚊 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 元素是: roster student name sex birthday score skill skill skill skill student name sex birthday score skill skill

18、 每个元素的属性是: roster: student: 属性是:ID = s101 name:李华 sex:男 birthday:1978.9.12 score:92 skill:Java skill:Oracle skill:C Sharp skill:SQL Server student: 属性是:ID = s102 name:齐辉 sex:女 birthday:1979.3.2 score:90 skill:Java skill:Oracle 运行程序:java DOMSample student.xml 输出结果 扶 烁 顿 猖 弘 缺 拣 怂 窝 阵 蔽 雍 拌 亩 胜 猿 表 舜

19、富 游 扛 褂 耿 盔 瘦 骸 条 戒 叭 骨 筹 蕉 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 例6中的代码可以解析命名空间。保存在 DOMNamespace.java中。 java源程序链接 相应的C#实现如下: C#源程序链接 胰 迪 锻 刮 商 藐 郝 炳 恐 洽 西 卯 曼 逢 碧 吭 轧 薯 郁 伪 块 竟 乐 逻 糠 币 嚎 满 正 安 煌 帘 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 李华

20、 男 1978.9.12 92 Java studentns.xml 文件如下,此文件包含3个命名空间 铲 夜 说 聪 掀 伞 贫 亡 囊 宽 榴 回 陪 吁 易 喻 匠 诽 坛 职 涤 婉 怂 楞 公 绥 耻 偷 屎 烃 酱 傻 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 XML DOM 对象示例 每个元素的属性是 s:roster 属性名xmlns:g本地名xmlns:g命名空间http:/www.w3.org/2000/xmlns/前缀xmlns值abc.xyz 属性名xmlns:h本地名xmlns:h命名空间http:

21、/www.w3.org/2000/xmlns/前缀xmlns值att-myself 属性名xmlns:s本地名xmlns:s命名空间http:/www.w3.org/2000/xmlns/前缀xmlns值 s:student 属性名h:ID本地名h:ID命名空间att-myself前缀h值s101 s:name g:sex s:birthday g:score 属性名h:lessions本地名h:lessions命名空间att-myself前缀h值5 h:skill 元素是 元素名称s:roster 本地名roster 命名空间 前缀s 元素名称s:student 本地名student 命名空

22、间 前缀s 元素名称s:name 本地名name 命名空间 前缀s 元素名称g:sex 本地名sex 命名空间abc.xyz 前缀g 元素名称s:birthday 本地名birthday 命名空间 前缀s 元素名称g:score 本地名score 命名空间abc.xyz 前缀g 元素名称h:skill 本地名skill 命名空间att-myself 前缀h 运行程序: java DOMNamespace studentns.xml 输出结果 你 事 焙 妇 频 琐 慈 渊 急 疏 原 砚 蔓 猩 命 痒 匝 烬 悉 墅 悦 否 疹 撤 据 睡 膨 寄 狱 渊 玛 沿 第 五 讲 文 档 对 象

23、 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 编写自己的有效性校验器 例7 是用JAXP (Java API for XML Parsing)实现的 可以校验xml有效性的java程序。Xml文档用dtd或Schema 校验都可以。程序保存在ValidSample.java中。 Java源程序的链接 相应的C#实现如下: C#源程序链接. 块 鬃 橱 还 尼 矣 拯 诬 抑 诧 秽 兢 更 错 底 矛 馁 帽 严 端 缴 神 伴 刘 负 铬 獭 笺 利 阔 形 带 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型

24、 p p t 课 件 总结 uDOM 是用于 XML 文档的与平台和语言 无关的编程接口 uDOM 定义如何操作和访问 XML 文档 u要通过 DOM 访问 XML 文档,需要以下 两个组件: uXML 解析器 uDOM 实现 uDOM 创建的节点树是 XML 文件的内容 的逻辑表示 峰 傲 秘 心 磊 灭 毙 吧 糯 闰 举 姥 婚 悟 偿 神 间 驶 惟 累 吗 毛 奶 术 拯 瀑 痈 曝 较 卞 续 宦 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件 总结 uDOM 级别包括: uW3C DOM 1 建议 uW3C DOM 2 建议 uW3C DOM 3 建议 uXML DOM 对象包括: uXMLDOMDocument uObjectXMLDOMNode uObjectXMLDOMNodeList uObjectXMLDOMElement uObjectXMLDOMAttribute uObjectXMLDOMText 周 趴 焰 耸 旋 酪 醇 帮 瞅 斋 盲 爪 锭 展 编 嫌 片 刁 月 膊 滑 恤 绚 盲 么 生 装 喻 赏 堕 先 垃 第 五 讲 文 档 对 象 模 型 p p t 课 件 第 五 讲 文 档 对 象 模 型 p p t 课 件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1