没有合适的资源?快使用搜索试试~ 我知道了~
首页sdo规范及其应用介绍
sdo规范及其应用介绍
4星 · 超过85%的资源 需积分: 11 20 下载量 108 浏览量
更新于2023-03-16
评论
收藏 290KB DOC 举报
随着SOA理念的流行和 WebService等技术的广泛应用,我们发现在越来越多的系统中,我们需要访问各种不同的底层数据,这些数据包括关系型数据库,EJB组件,XML文件或数据库,Web服务, JSP 页面数据等等。为了能够访问和操作这些数据,开发人员必须了解针对不同数据源操作的规范和API。SDO(Service Data Object)为我们提供了统一的数据应用开发框架,它提供了对多种企业信息系统 (EIS) 的统一的数据访问,包括数据库、遗留应用程序(使用 JCA)、XML 或者是 Web服务数据源。通过使用 SDO 的一种独特而简单的模型,应用程序摆脱了使用多种 API 和框架进行数据访问的复杂工作。从而使开发人员只需了解一种API便可操作上述数据。下面我们就来了解一下什么是SDO。
资源详情
资源评论
资源推荐
1 SDO 概述.........................................................................................................................................1
1.1 为什么需要 SDO?..............................................................................................................1
1.2 什么是 SDO?........................................................................................................................1
1.3 SDO 的基本结构..................................................................................................................3
2 SDO 环境的搭建.............................................................................................................................5
3 SDO 的基本概念.............................................................................................................................6
3.1 数据图...................................................................................................................................6
3.2 数据对象.............................................................................................................................11
3.3 变更摘要.............................................................................................................................12
3.4 属性.....................................................................................................................................13
3.5 类型.....................................................................................................................................15
3.6 序列.....................................................................................................................................18
4 Apache Tuscany 的 Java SDO........................................................................................................23
4.1 将 XML 转换为 Data Object..............................................................................................23
4.2 读取 Data Object.................................................................................................................27
4.3 基于 XSD 创建 DataObject................................................................................................31
1 SDO 概述
1.1 为什么需要 SDO?
随着 SOA 理念的流行和 WebService 等技术的广泛应用,我们发现在越来越多的系统中,
我们需要访问各种不同的底层数据,这些数据包括关系型数据库,EJB 组件,XML 文件或
数据库,Web 服务, JSP 页面数据等等。为了能够访问和操作这些数据,开发人员必须了
解针对不同数据源操作的规范和 API。SDO(Service Data Object)为我们提供了统一的数据应
用开发框架,它提供了对多种企业信息系统 (EIS) 的统一的数据访问,包括数据库、遗留
应用程序(使用 JCA)、XML 或者是 Web 服务数据源。通过使用 SDO 的一种独特而简单的
模型,应用程序摆脱了使用多种 API 和框架进行数据访问的复杂工作。从而使开发人员只
需了解一种 API 便可操作上述数据。下面我们就来了解一下什么是 SDO。
1.2 什么是 SDO?
SDO(Service Data Objects)服务数据对象,是 BEA 和 IBM 共同发布的一项规范。SDO
是 Java 平台的一种数据编程架构和 API,它统一了不同数据源类型的数据编程,提供了对
通用应用程序模式的健壮支持,并使应用程序、工具和框架更容易查询、读取、更新和检
查数据。这里需要说明,SDO 不是一种针对数据访问和持久化的技术,而是一种数据编程
架构和一组 API。SDO 主要用于简化数据编程,让开发人员能集中解决业务逻辑问题而不
是底层技术。
SDO 是信息的容器,设计用于提升开放标准和互操作性。SDO 提供了在整个企业应用
程序中表示信息的方法,包括表示层、业务逻辑层和持久层之间的通信,如图所示:
SDO 解决了异构数据的兼容性的问题,提出了一个简单并统一的模式供服务处理其相
关的数据。开发人员可以用 SDO 统一其数据访问和处理模式,即使这些数据来源于异构数
据源——关系数据库、XML 数据、Web 服务或者是企业信息系统。
SDO 通过以下手段简化数据编程:
统一了不同数据源类型的数据编程,屏蔽的数据库底层的差异,对异构数据可以
通过相同接口来调用,使应用把精力放在数据的逻辑结构,而不是把物理差异也
考虑进去;使数据库迁移及版本升级变得很容易,无需修改数据操作逻辑。
动态数据类型,传统静态数据类型如 JavaBean 必需知道对操作数据要完全清楚,
然后通过 get 和 set 方法来操作该数据类型,而对应无法预先知道的数据,SDO 则
更适合,SDO 根据实际数据需求,可以动态的组合数据(可以通过 XSD 配置,
也可以通过代码),添加、修改属性。
提供了对通用应用程序模式的健壮支持
使应用程序、工具和框架更容易查询、读取、绑定、更新和检查数据;变更摘要
使数据操作变得更得心应手。
1.3 SDO 的基本结构
SDO 采用离线数据图的设计理念。数据图是一组树型结构或者图型结构的数据对象。
离线的访问方式是指客户端从数据源提取并构建数据图,然后在应用中操作数据图,并在
变更摘要(Change Summary)中记录相应的数据操作,在动作结束后由数据访问服务
(Data Access Service)批量地将相应的改变反映回数据源,其中数据源可以是异构的,并
不仅仅限于关系数据库。
SDO 的数据表现形式基于数据对象(Data Object)和数据图(Data Graph)的概念,其
封装形式和 Java 类和 XML 有水到渠成的映射关系。同时,SDO 提供了丰富的数据操作接
口——动态接口和静态接口,还可以用 XPath 来直接访问相应的数据对象属性。
如图所示,SDO 有下面一些主要部分:
SDO 的结构
数据图(Data Graph)
从概念上来说,数据图是一组提供组件之间或层之间的传输单元的数据。具体来说,
数据图是一个多根的数据对象集合。数据图记录所有对数据的更改,包括新的数据对象、
被更改的数据对象以及被移除的数据对象。
数据对象(Data Object)
数据对象将数据保存为一组属性。这些属性包括基本值(比如 XML 属性和 XML 元素
内容)以及指向其他数据对象的引用(例如,PurchaseOrder 数据对象可能有一个 Customer
属性)。对于 XML 数据来说,数据对象通常表示一个元素、元素的属性、简单类型子元
素的值以及指向表示复杂类型子元素的数据对象的引用。对于关系数据,数据对象通常表
示一行数据。外键会通过指向另一个数据对象的引用来表示,表示另一个表中的一行。
属性(Property)和类型(Type)
业务数据是作为属性保存到数据对象中的,而每一个属性符合 SDO 类型定义。SDO 类
型可以是简单数据类型,也可以是一个数据对象类型。
序列(Sequence)
序列是一个特殊的属性组,每一个序列中的属性都有索引,即使对同一属性的不同操
作。序列可以用于表现半结构化的 XML 数据,如文字和数字混排的情况。
变更摘要(Change Summary)
变更摘要是实现离线数据访问的一个重要组件,隶属于数据图或者数据对象。变更摘
要初始是空的,随着数据图和数据对象的变化而填充数据,从而保证了数据可以被增量地
更新到后台数据源。
数据访问服务(Data Access Service, DAS)
数据访问服务是 SDO 离线访问模式的一个不可或缺的部分,尽管现在还不是 SDO 规
范中的一部分。数据访问服务可以从后端数据源建立数据图和数据对象,并且将其存回相
应的数据源。DAS 支持基于变更摘要的增量更新。
2 SDO 环境的搭建
构造 SDO 环境,首先需要安装 TUSCANY,可以参考 SCA 的文档。
2.1:在 http://tuscany.apache.org/sdo-java-download.html
网站上下载 Windows
Binary 版本的 sdo:tuscany-sdo-1.0-incubating-beta1-bin.zip;
2.2:将上述 zip 文件解压,例如解压到 E 盘,则目录结构为:
2.3::配置 Tuscany。
2.3.1 从菜单栏中选择 Window > Preference
2.3.2 在 preference 对话框中选择 Java > Build Path > User Libraries.
2.3.3 单击 New 按钮新建一个 user library.
2.3.4 输入 SDO 作为 user library 的名字。如图所示:
2.3.5 单击 Add JARs,将 E:\tuscany-sdo-1.0-incubating-beta1\lib 中所有 JARs 加到该 user
library:
2.4:这样 SDO 环境就配置好了,在应用中,你需要将这个 user library 添加到你工程中的
build path 中去。
剩余31页未读,继续阅读
yuxiangyu
- 粉丝: 6
- 资源: 48
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- 27页智慧街道信息化建设综合解决方案.pptx
- 计算机二级Ms-Office选择题汇总.doc
- 单链表的插入和删除实验报告 (2).docx
- 单链表的插入和删除实验报告.pdf
- 物联网智能终端项目设备管理方案.pdf
- 如何打造品牌的模式.doc
- 样式控制与页面布局.pdf
- 武汉理工Java实验报告(二).docx
- 2021线上新品消费趋势报告.pdf
- 第3章 Matlab中的矩阵及其运算.docx
- 基于Web的人力资源管理系统的必要性和可行性.doc
- 基于一阶倒立摆的matlab仿真实验.doc
- 速运公司物流管理模式研究教材
- 大数据与管理.pptx
- 单片机课程设计之步进电机.doc
- 大数据与数据挖掘.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论4