- 1、本文档共22页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
正文 正文 正文 谢 谢 Thanks for listening. 第10章 运用DOM处理XML 目标 -*- 了解DOM的概念 了解DOM处理XML的优势 掌握DOM的文档结构 了解XPath的特点和结构 掌握XPath的数据类型和节点间的关系 掌握XPath表达式及应用 掌握XPath定位路径的使用 了解JDOM的概念和基本结构 掌握JDOM的常用API 掌握使用JDOM处理XML的基本步骤 -*- 文档对象模型概述 XML DOM 是 XML Document Object Model 的缩写,即XML文档对象模型。 使用DOM处理XML有以下几点优越性 : DOM能够保证XML文档的语法正确和格式正规 ; DOM能够从语法中提取内容 ; DOM能够简化内部文档操作 ; DOM能够贴切地反映典型的层次数据库和关系数据库的结构 . -*- DOM文档结构 在DOM中,将XML逻辑结构描述成树。 XML中共有12种节点类型,常见的节点类型有: 文档 元素 文本 属性 注释 DOM对象的层次 -*- XPath XPath就是一种专门用来在XML文档中定位和查找信息的语言,通过XPath可对XML文档中的元素和属性进行遍历,是高级XML应用的基础 。 XPath主要有四种数据类型: 节点集 布尔类型 字符串类型 数值类型 在XPath中,可以将节点划分为七种节点类型: 根节点(Root Node) 元素节点(Element Nodes) 文本节点(Text Nodes) 属性节点(Attribute Nodes) 命名空间节点(Namespace Nodes) 处理指令节点(Processing Instruction Nodes) 注释节点(Comment Nodes) -*- XPath XPath节点关系: 父(parent) 子(children) 同胞(sibling) 先辈(ancestor) 后代(descendant) bookstore 示例 ?xml version=1.0 encoding=GB2312? bookstore book title lang=enRESTful Web Services/title authorLeonard Richardson/author year2007/year price29.00/price /book /bookstore -*- XPath表达式 XPath将XML文档看作由节点构成的层次树,通过编写XPath表达式来定位树中特定的节点 XPath路径表达式: “/”代表这是绝对路径,表示当前文档的根节点 “//”则表示相对路径,表示当前文档所有的节点 表达式 描述 nodename 选取此节点的所有子节点 / 从根节点选取 // 从任意节点选取 . 选取当前节点 .. 选取当前节点的父节点 @ 选取属性 -*- XPath表达式实例讲解 ?xml version=1.0 encoding=GB2312? bookstore book title lang=enRESTful Web Services/title price29.00/price /book book title lang=zhJava编程基础/title price46.00/price /book /bookstore bookstore? 选取 bookstore 元素的所有子节点 /bookstore 选取根节点bookstore元素 /bookstore/book/price 选取bookstore元素下所有book元素的所有price元素 /bookstore/book/* 选取/bookstore/book的所有子元素 bookstore/book 选取bookstore元素下所有的book子元素 //bookstore 选取文档中所有的bookstore元素,无论它在什么层次 bookstore//book 选取在bookstore元素下所有的book元素,无论它们位于bookstore之下的什么位置 /bookstore/*/price 选取bookstore的子元素中,包含有price作为子元素的元素 //* 选取文件中的所有元素 //@lang 选取所有名为 lang 的属性 -*- XPath表达式实例讲解 XPath谓语表达式实例 如果需要选择一个以上的路径,可以在XPath表达式中使用“|”运算符 路径表达式 描述 /bookstore/book[last()] 选取属于bookstore子元素的最后
文档评论(0)