• 热门标签

当前位置: 主页 > 航空资料 > 计算机 >

时间:2010-08-09 13:05来源:蓝天飞行翻译 作者:admin
曝光台 注意防骗 网曝天猫店富美金盛家居专营店坑蒙拐骗欺诈消费者

所需的信息,或者利用D O M再次将信息加载到数据库中。
2. 客户端的D O M
在编写本书时,只有Microsoft Internet Explorer 5.0客户端内置了D O M功能,N e t s c a p e及其
他浏览器的开发人员正在为它们的系统增加DOM Level 1支持。一旦支持D O M的浏览器被广泛
使用, I n t e r n e t开发人员就能够在客户端利用D O M改善信息展示的方式,并减少与服务器的交
互。
(1) 灵活的客户端展示
使文档对于不同的客户端可视变得越来越重要。根据客户端的类型以及文档的用途,客户
端可能要通过多种方式展示文档。例如,蜂窝电话提供商开始尝试通过电话本身的微型L C D屏
幕提供有限形式的浏览。就这种目的而言, H T M L并不理想,因为它不包含说明标记中内容含义
的信息,它仅仅说明了如何展示这些内容。因此,电话的展示引擎不知道告诉用户蛇的颜色以
及它是否有毒是不是非常重要。X M L通过将有关内容的信息作为标记的一部分解决了这个问题。
对于设备接收到的文档,定制的浏览器可以使用D O M遍历它的节点树,并且有选择地鉴别可以
忽略的信息。
(2) 客户端数据输入
随着D O M与主要浏览器的集成,可以使用客户端D O M对X M L文档进行操作,为用户提供
更高级的交互。系统可以从客户端收集结构化信息,并将它一次性传回服务器,而不必通过跨
越几个页面的一系列表单获取这些信息。
5.2.3 DOM在出版过程中的应用
下面让我们看一下如何在企业环境中利用D O M产生和操作X M L文档。
1. DOM和数据库
X M L为在不同的数据库之间传递信息提供了理想的机制。从本质上讲,数据库是专有的
—每个数据库有不同的元素命名结构,不同的规格化级别,甚至描述枚举信息的方法也不尽
相同。利用D O M能够简化各种数据库之间信息传递的方式。
通常,在数据库之间传递数据时,必须为每种类型的传输构建定制的翻译程序(参见图
5 - 5)。
通过将D O M作为公共的传输机制,能够大幅度减少需要编写的翻译程序的数量—每个数
据库只要从公共的经过协商的X M L结构导入和导出即可(参见图5 - 6)。
D O M能够用于创建这些转换机制。
2. 使用D O M创建复杂的X M L文档
通过D O M操作X M L文档的优点之一在于D O M是随机访问的,即:任何时刻都可以在X M L
树的任何位置创建和附加节点。当你根据层次型或关系型数据库中的信息构建X M L文档时,这
一特征非常有价值。下面的例子有助于解释这一优点。
假设我们有以下数据库:
122使用XML 高级编程
下载
图5-5
图5-6
程序清单5 - 5
第5章文档对象模型使用123 下载
SQL Server
数据库
遗留的
ISAM/VSAM
数据库
固定宽度
的文件
含分隔符
的文件
SQL Server
数据库
公共的XML
格式
Oracle
数据库
POET
数据库
含分隔符
的文件
固定宽度
的文件
遗留的
ISAM/VSAM
数据库
POET
数据库
Oracle
数据库
我们希望根据这些表中存储的信息为特定的客户ID创建一个XML文件,它应该具有以下形式:
程序清单5 - 6
如果打算手工编写X M L文件,我们必须执行以下步骤:
• 从c u s t o m e r表中获取客户信息。
• 将客户信息写入X M L文件。
• 从i n v o i c e表中获得该客户的所有发票。
• 对于每个发票,执行以下操作:
• 将发票的信息写入X M L文件。
• 从l i n e i t e m表中获得该发票的所有行式项目。
• 对于每个行式项目,执行以下操作。
• 将行式项目的信息写入X M L文件。
• 写入发票对象的结束标记。
• 写入客户对象的结束标记。
然而,如果使用D O M,我们将通过以下方法产生节点树。
• 产生客户根节点。
124使用XML 高级编程
下载
• 获取客户的所有发票。
• 为每个发票创建一个节点,并将它附加到客户节点。
• 获取客户的所有行式项目。
• 为每个行式项目创建一个节点,并将它附加到适当的发票节点。
这是一个简单的例子,但是它足以说明通过D O M创建X M L文档比将信息写入文本文件更加
简单。你不必为了获得所需的信息在各个表之间来回跳跃,每个表中的所有信息可以同时写入
文件。随着节点树深度的增加,第一种方法将变得越来越繁琐,而第二种方法具有很好的扩展
性。另外,使用D O M产生文档能够保证文档是格式正规的。在我们的第一个例子中,假如我们
忘记了发票对象的结束标记—就无法解析X M L文档。
5.3 使用DOM和XML的应用实例
下面我们将通过几个实例说明如何在实际的应用中使用D O M。
5.3.1 简单的客户端实例
在本节中,我们将在客户端使用J S c r i p t和D O M对象创建代表图书的X M L文档。由于D O M对
象是用于客户端的,因此这个例子必须使用Internet Explorer 5运行。它允许用户输入有关图书
的信息,书的作者和类别。它使用D O M及时产生X M L,并使用X S L样式表显示输入的信息。应
用程序将提供图5 - 7所示的用户界面。
图5-7
第5章文档对象模型使用125 下载
当用户通过按钮添加新项目时,将看到它们以如图5 - 8所示的形式显示。
图5-8
表单下方和页面底部之间将出现图书信息的H T M L表示和所创建的X M L(如图5 - 8所示)。
该演示利用D O M通过程序创建X M L文档。
利用D O M允许用户修改页面
我们的We b站点h t t p : / / w w w. w r o x . c o m提供了本书的可下载代码,你可以从中获得本节实例程
序的文件。
首先,我们来创建提供图书数据输入的H T M L页面—B o o k C l i e n t . h t m。页面中应该包含表
单,以便用户输入图书的一般性信息:
 
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:XML高级编程上(52)