利用JAVA技术进行XML编程(第一部分)
在过去几年中,XML 已经成为一种通用的数据格式。这篇经过修订的教程将向您介绍 Java 语言中处理 XML 文档最常用的编程接口。最普通的 XML 处理工作是 解析 XML 文档。解析包括读取 XML 文档并确定其结构和内容。XML 编程的一个好处是可以使用开放源代码的、免费的 XML 解析器读取 XML 文档。本教程主要讨论创建解析器对象、要求解析器处理 XML 文件、处理解析结果。如您所料,可以使用不同的方式完成这类常见的任务;我将分析所涉及到的标准以及什么时候应该使用这种或那种方法。
编程接口 第 2 页(共5 页)
为了简化编写处理 XML 的 Java 程序,已经建立了多种编程接口。这些接口或者由公司定义,或者由标准体或用户组定义,以满足 XML 程序员的需要。本教程将讨论以下接口:
Document Object Model (DOM,文档对象模型),Level 2
Simple API for XML (SAX), Version 2.0
JDOM, Jason Hunter 和 Brett McLaughlin 创立的一种简单 Java API
Java API for XML Processing (JAXP)
这四种接口中前三个(DOM、SAX 和 JDOM)定义了如何访问与表示 XML 文档的内容。JAXP 包含创建解析器对象的类。要创建 DOM 或 SAX 解析器,您需要使用 JAXP。如果使用 JDOM,JDOM 库将在幕后使用 JAXP 为您创建一个解析器。总之:
使用 DOM、SAX 或 JDOM 处理 XML 文档的内容。
如果使用 DOM 或 SAX,则使用 JAXP 创建解析器。
如果使用 JDOM,则 JDOM 库为您创建解析器。
我将考察上述每种 API 的设计目标、长处和缺点,同时还涉及到一点它们的历史以及创建这些 API 的标准体。
关于例子 第 3 页(共5 页)
本教程中包含多个使用 DOM、SAX 和 JDOM API 的示例程序。所有这些程序都使用 XML 标记的莎士比亚十四行诗。十四行诗的结构如下:
<sonnet>
<author>
<lastName>
<firstName>
<nationality>
<yearOfBirth>
<yearOfDeath>
</author>
<lines>
[14 <line> elements]
</lines>
</sonnet>完整的例子请参阅 和 (下载后使用文本编辑器查看)。设置机器 在运行这些例子之前,需要对您的机器作一些设置。(假设您知道如何编译和运行 Java 程序,并了解如何设置 CLASSPATH 变量。)首先请访问 Apache XML Project (http://xml.apache.org/xerces2-j/) 上的 Xerces XML 解析器主页。您也可以直接去 下载页面 (http://xml.apache.org/xerces2-j/download.cgi)。
补充:Jsp教程,Jsp/Servlet开发工具