IBM®
跳转到主要内容
    中国 [选择]    使用条款
 
 
Select a scope: Search for:    
    首页    产品    服务与解决方案     支持与下载    个性化服务    

developerWorks 中国  >  XML  >

理解 DOM

developerWorks

级别: 初级

Nicholas Chase , 作者, Web 站点开发人员

2007 年 3 月 12 日
2008 年 8 月 14 日 更新

现在注册或者使用您的 IBM ID 和密码登录。

还没有出现 XML 之前,就有了文档对象模型(Document Object Model,DOM)。它允许开发人员在 XML 结构内引用、检索和更改项,并且是处理 XML 的重要工具。在本教程,您将了解到 DOM 文档的结构。同时,您还将学习如何使用 Java(TM) 技术从 XML 文件创建文档、修改该文档并检索输出。

预备知识

本教程是为如下开发人员设计的,他们理解 XML 的基本概念,并且准备继续编写应用程序代码,使用文档对象模型(Document Object Model,DOM)来操作 XML。 这里假设读者熟悉诸如格式良好和 XML 文档的类标签性质等概念。(如果有必要,您可以通过 XML 入门 教程了解关于 XML 的基础知识)。

本教程中的所有例子都是用 Java 语言编写的,不过即使没有亲自试验这些例子,也可以通过本教程彻底了解 DOM。编写应用程序(用于操作 DOM 中的 XML 数据)的概念和 API 对所有语言或平台都是相同的,都不涉及 GUI 编程。


系统需求

如果您想试验本教程中的例子,需要安装以下工具,并确保它们能正常工作。运行这些例子并不是理解本教程的必要条件。

  • 文本编辑器:XML 文件只不过是文本文件。只需要一个文本编辑器就可以创建和读取它们。
  • Java™ 2 SDK,Standard Edition 1.4.x 版:DOM 支持已内置到最新版本的 Java 技术中(可从 http://java.sun.com/j2se/1.4.2/download.html 获得),因此您不需要安装任何单独的类。如果您正在使用早期版本的 Java 语言,比如 Java 1.3.x,您还需要像 Apache 项目的 Xerces-Java(可从 http://xml.apache.org/xerces2-j/index.html 获得),或 Sun 的 Java API for XML Parsing(JAXP)这样的 XML 解析器,后者是 Java Web 服务开发包的一部分(可从 http://java.sun.com/webservices/downloads/webservicespack.html 获得)。
  • 其他语言:如果希望改编这些例子,DOM 实现也可在其他编程语言中使用。 您可以从 Apache 项目网站 http://xml.apache.org 下载 Xerces 的 C++ 和 Perl 实现。


学习时间

少于 1 小时


格式

html, pdf


参考资源

  • 您可以参考本文在 developerWorks 全球站点上的 英文原文
  • 阅读教程 “XML 入门” 获得关于 XML 的基础知识(developerWorks,2002 年 8 月)。
  • 查看 W3C DOM 页面 以了解DOM 推荐标准的 Level 1Level 2Level 3
  • 在 Brett McLaughlin 的技巧 “Moving DOM nodes” 中,您可以学习如何在没有遇到常见异常的情况下,将节点从一个文档移动到另一个文档(developerWorks,2001 年 3 月)。
  • 试验一下 Brett McLaughlin 的技巧 “从 DOM 转换”,该技巧解释了如何将 DOM Document 转换为 SAX 流或 JDOM 文档(developerWorks,2001 年 6 月)。
  • 阅读 Nicholas Chase 的技巧 “使用 TreeWalker 遍历 XML 文档”(developerWorks,2002 年 10 月),以了解使用 DOM Level 2 的 Traversal 模块来考察文档的替代办法;以及阅读他的技巧 “使用 DOM NodeFilter ” 中对该能力的详述(developerWorks,2002 年 12 月)。
  • DOM 的替代者之一是 Simple API for XML(SAX)。SAX 允许您在读取文档时处理它,从而避免必须等待整个文档被存储之后才能采取操作。在 developerWorks 教程 “理解 SAX” 获得更多关于 SAX 的信息(更新于 2007 年 3 月)。
  • 下载 the Java 2 SDK,Standard Edition 1.4.2 版(http://java.sun.com/j2se/1.4.2/download.html)。
  • 如果您正在使用旧版本的 Java 语言,请下载 Apache 项目的 Xerces-Java (http://xml.apache.org/xerces2-j/index.html), 或 Sun 的 Java API for XML Parsing(JAXP),后者是 Java Web 服务开发包(http://java.sun.com/webservices/downloads/webservicespack.html)的一部分。
  • 下载 Xerces C++,这是一个验证 DOM 解析器(http://xml.apache.org/xerces-c/index.html)。
  • 下载 Xerces.pm,这是一个使用 Xerces C++ API 的 Perl API 实现,它提供从 Perl 访问大多数 C++ API 的能力(http://xml.apache.org/xerces-p/index.html)。
  • 获得 IBM 的 DB2 数据库(http://www.ibm.com/software/data/db2/),它不仅提供关系数据库存储,而且还提供 XML 相关的工具,比如 DB2 XML Extender(http://www.ibm.com/software/data/db2/extenders/xmlext/),这个工具提供 XML 和关系系统之间的桥接。访问 DB2 专区 以了解关于 DB2 的更多信息(http://www.ibm.com/developerworks/cn/db2/)。
  • 了解如何能够成为一名 XML 和相关技术的 IBM 认证开发人员



回页首


IBM 公司保留在 developerWorks 网站上发表的内容的著作权。未经IBM公司或原始作者的书面明确许可,请勿转载。如果您希望转载,请通过 提交转载请求表单 联系我们的编辑团队。

文档选项

未显示需要 JavaScript 的文档选项

英文原文

英文原文


    关于 IBM 隐私条约 联系 IBM 使用条款