• 热门标签

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

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

换的基本技术。你应该将这五条原则牢记在心,并且经常考虑如何利用它们改进代码。
在此过程中,我将为你提供一些建议。
16.3 商业实例
假设你负责管理的部分由若干计算机程序员组成。自从部门成立以来,每个程序员都被分
配了多个项目。当一个项目完成时,你要记录一段简短的说明,描述程序员在项目中的表现。
你会定期查看这些说明,对程序员的专业开发能力进行评价。你不打算花费大量时间和精力开
发能够完成这项任务的应用程序,你只是希望从网络中的任何一台计算机都能够访问这些数据。
第16章实例研究2—XML和分布式应用程序使用691 下载
图16-5
如果数据是自描述的,寻找
旧版本服务的客户端能够从
新版本数据中提取部分信息
无法获得的或
者断线的服务
客户端能够从不同的但是相
关的服务中提取部分信息
企业内部网的应用程序似乎是理想的选择。任何配备了公司标准浏览器(根据我们的设计,
它应该是Internet Explorer 5.0)的系统都能够运行该应用程序。A S P和客户端脚本能够迅速构造
出满足我们需求的系统原型。应用程序将使用J a v a S c r i p t作为它的脚本语言。
刚刚学习了五条开发原则,你一定渴望着将它们付诸实践。如果你从客户端通过A D O远程
访问数据,就会使数据中蕴含着技术依赖性。如果你在服务器上使用A D O获取数据并产生
H T M L—该问题领域最通用的We b开发技术—你的服务器代码将受到使用浏览器的人类用户
的限制。这意味着商业过程中要包含手工步骤。现在,你决定在服务器上使用A D O,并将数据
转化为X M L传输到客户端。通过这种方式,就能够保持数据的原始面貌,仅仅在最后一刻才将
它转变为可视化的样式。由于将X M L作为数据交换格式,因此数据采用了一种独立于平台的格
式。你的A S P将采取服务的形式。客户端将向服务器发送请求( X M L文档),并接收来自服务器
的应答(另一个X M L文档)。当你要查询某项服务时,通过获得它的U R L定位服务。从理论上讲,
网络管理员在服务调用期间可以在客户端应用程序不知情的情况下移动或更换服务。客户端将
通过指定要获得的X M L词汇表的名称询问服务的位置。
M i c r o s o f t最近给A D O和SQL Server增加了X M L支持。然而,除非关系模式恰好与我们的
约定相匹配,否则这种自动化的支持不能为我们提供任何帮助。在本例中,为了使用表
达集合的约定,我们将通过程序构造X M L。X M L数据是趋于层次化的,它能够巧妙地表
达大多数商业对象。然而,关系数据不善于表达层次结构,它只能通过复杂的链接。
Microsoft提供的XML支持在许多情况下都非常有价值,但是不适合我们的这个例子。
16.4 应用程序设计
对于这个应用程序来说,用户界面设计成功的关键在于减少服务代理需要查看的页面数。
在客户使用系统的过程中,服务代理将执行以下任务:
• 在系统中查询程序员的信息(全名和职称)。
• 增加新的程序员,更新现有的程序员记录。
• 在系统中查询项目成果说明。
• 输入新的成果说明。
我们应该能够将所有内容放在一页中,并用水平线进行分隔。水平线之上是显示一个程序
员信息的数据绑定表单。水平线之下是项目成果历史表,每个单元格对应一个项目成果说明,
其中包括:项目名称、项目I D和成果说明文本框。图1 6 - 7显示了页面的内容。
页面上半部分左侧的四个按钮用于浏览记录,以便寻找与要查看的成果说明对应的程序员。
用户可以显示集合中的第一个或最后一个程序员,可以每次向前或向后移动一条记录。程序员
表单中的元素是与服务器返回的X M L绑定的。
位于同一行的其余按钮用于执行以下功能:
• 输入新的程序员。
• 编辑现有的程序员信息。
• 获取特定程序员的项目成果历史,它将显示在页面的水平线之下。
692使用XML 高级编程
下载
图16-7
• 清除程序员表单,准备搜索特定的程序员或插入新的程序员数据。
• 搜索现有的程序员信息。
页面的下半部分用于显示程序员的成果历史,或者插入新的成果报告(参见图1 6 - 8)。
图16-8
第16章实例研究2—XML和分布式应用程序使用693 下载
这个应用程序可以设计为直接与程序员信息数据库绑定。然而,我们提出的原则鼓励我们
对应用程序隐藏数据存储的细节。我们应该将元素与程序员和程序员成果历史服务绑定。这些
服务将直接对数据库进行操作,但是它们将以X M L文档的形式与客户端交流信息。这样,客户
端有足够的灵活性选择各种方法,服务器端也可以自由地改变数据库和数据库模式。
如果你希望亲自尝试这个应用程序,建议你从我们的We b站点h t t p : / / w w w. w r o x . c o m /下载代
码和样例数据库。数据库中包含程序员,以及程序员G e n i u s,A u t h o r i t y,D o e,S m i t h,
Typhoid,Calamity,Sullivan,Bee和Greeley的成果说明项。
16.4.1 应用程序的组织
下面我们将对应用程序进行整体概述(参见图1 6 - 9)。页面P r o j Tr a c k . h t m l将下载到客户端。
当用户对页面中的元素进行操作时,脚本将在本地执行。这些脚本将确定它们所需的服务的位
置。服务位于We b服务器上,它们实现为A S P页面S t a ff . a s p和H i s t o r y. a s p。请求以X M L文档的形
式发送给服务,其中文档是根据适当的请求词汇表编写的。服务将解析请求,查询数据库
p r o j e c t s . m d b,并根据查询的结果利用应答词汇表创建新的X M L文档。客户端接收应答,进行解
析,并将结果显示在数据绑定的D H T M L表单中。需要注意的是,服务器对客户端隐藏了数据存
储和获取的细节,客户端对服务隐藏了使用和显示数据的问题。以独立于平台的方式交换数据
的原则保证了独立性,因而也提高了重用的可能性。例如,你可以将客户的页面P r o j Tr a c k . h t m l
 
中国航空网 www.aero.cn
航空翻译 www.aviation.cn
本文链接地址:XML高级编程下(58)