级别: 初级
【程序编程相关: 服务引擎的 DB2 瘦客户机:第 2 】c.m.saracco, 高级软件工程师, ibm 【推荐阅读:支持的 JDBC 驱动程序】
【扩展信息:Kylix 3 构建 DB2 Web 服】 jacques labrie, 高级软件工程师, ibm stephen brodsky, 高级技术工作人员, ibm 2004 年 9 月 将 enterprise information integration (eii) 技术与 service data objects (sdo) 合并可以帮助面向对象的编程人员方便地使用多种不同种类的数据源,减少集成异类数据的复杂性.在本文中,我们将说明合并的原因,描述样例体系结构,并提供基于 ibm® websphere® studio 中早期 sdo 支持与 db2® information integrator 中 eii 支持的编码示例.因为 ibm 与 bea systems 去年共同合作开发了新的 java™ 数据访问规范,许多 it 架构师与软件工程师都想知道,这个称为 service data objects 或 sdo 的新模型是如何与在过去两年内变得日益流行的 enterprise information integration (eii) 技术在一起使用的.sdo 与 eii 都向编程人员提供了各种异类数据的单一接口,允许编程人员通过单一数据结构对数据进行操作.您将了解如何在促进灵活业务环境的面向服务体系结构 (soa) 应用程序中一起使用这两种技术.
sdo 与 eii 技术形成互补的解决方案,因为它们在关键方面互不相同.例如,sdo 是支持断开连接的应用程序编程体系结构的编程模型,它使用数据图表示持久存储数据,并使用基于对象的 api.与 sdo 形成对照,eii 是提供实时数据访问的数据集成服务器,通常用表来表示不同种类的数据,而且它使用基于 sql 的 api.
同时使用 eii 与 sdo 可以增加 sdo 体系结构的能力并提高生产率,这些您会在本文中了解到.eii 可以帮助 sdo 前端 java 组件快速构建与部署虚拟数据访问服务层.
在本文中,我们将基于 ibm 的商业实现讨论 sdo 与 eii 技术之间的协同作用.我们提供了使用 sdo 早期版本的示例,该版本包含在 websphere studio application developer, version 5.1.2 中,而 version 5.1.2 附带了受 db2 information integrator, version 8.1 支持的 eii 技术.对于那些不熟悉 sdo 或 eii 的人,我们首先对这些技术进行简要介绍,并说明它们各自的潜在优点.然后介绍的是集成的体系结构,并提供了示例代码.最后,我们提供了使用 sdo 与 eii 成功设计.开发与部署试验项目的一些技巧.
技术概述
service data objects
sdo 是用于各种格式数据的统一访问的基于对象的编程规范.设计它是为了补充现有 java 2 enterprise edition (j2ee™) 数据访问机制,其中包括 enterprise javabeans (ejbs).java database connectivity (jdbc™) 与大量用于持久性的流行架构.它还支持面向服务的体系结构 (soa), 其中包括 web 服务.定义 sdo 的部分动机是,使编程工具的编程人员与开发人员在他们各自选择的开发架构中工作时能够使用一致的.基于对象的数据访问 api.sdo 的显著特点是断开连接的编程模型,这是许多基于 web 的应用程序的共同要求.sdo 很好地符合这些应用程序的要求,使它们可以受益于连接到数据库(或其他持久存储数据源).检索适当数据.断开数据源连接,以及脱机处理与操作数据.在应用程序重建数据库连接之后,即可对数据的在内存中的副本进行任何更新,乐观型并发控制技术(optimistic concurrency control technique)可以检测与防止发生冲突的更新.sdo 为编程人员提供了以面向对象的方式建模与操作各种持久存储数据的方法,从而不必知道每个必需的数据源的本地 api.
如图 1 中所示,sdo 编程人员使用了由一个或多个 数据对象组成的 数据图(树状结构数据的集合).数据图结构非常符合特定类型 web 应用程序的要求,比如那些显示主-从信息,而且很容易被大多数面向对象的应用程序编程人员理解的应用程序.图 1 显示了应用程序客户机或组件如何处理由一个或多个数据中介服务(如这里显示的 jdbc 中介)返回的断开连接的数据图.
在运行时, 数据中介服务 负责与适当的数据源进行交互,使用检索的数据构造数据图,并将对存储器内图(in-memory graph)的任何更改应用回数据源.我们将集中讲述一种特定类型的数据中介服务 —— jdbc 中介,用它来说明如何从 eii 服务器检索数据,然后通过由此生成的数据图来脱机操作数据.
... 下一页