(最近一直在接触SDO,转载一些文章,共同学习)
数据对象是SDO框架的核心。数据对象是一个业务对象的一般表达,并且没有和特殊的持久化存储机制绑定。
数据图是一个相关数据对象的集合。在SDO1.0里,一个数据图总是被一个DataGraph信封对象所包装,而在SDO2.0里,数据对象图可以存在于DataGraph之外。(数据图)Data graph作为两个单词分开使用时,指任何一个数据对象集合;(数据图)DataGraph作为一个单一单词使用时,特指一个DataGraph信封对象。
所有数据图都有一个单一的根数据对象,它直接或间接的包含图里的所有其它数据对象。当的数据图里的所有数据对象仅仅引用自身的数据对象时,我们称该数据图是封闭的。封闭是一个数据图的标准状态。
一个数据图由以下组成:
一个封闭的数据图形成了一个数据对象的树形结构。数据图能够记录跟踪描述数据对象的模式。数据图同样也可以维护一个更改概要(ChangeSummary),ChangeSummary表达了施加于该图数据对象之上的更改。
对于终端用户而言,访问数据图的标准方式是通过数据访问服务(DAS)。DAS提供了从库中加载数据图和将数据图保存回库中的方法。例如,一个XML文件DAS将加载和保存一个数据图为XML文件,一个JDBC DAS将使用一个关系数据库加载和保存一个数据图。针对其它特殊的DAS的规范超出了本规范的范围。
经典的DAS使用了一个非连接的数据架构,客户端除了在读写数据图时,均和DAS保持一个非连接的状态。因而,一个使用数据图的典型场景涉及以下步骤:
注意有两个特别的角色能够能够用来区分数据对象用户:客户和DAS writer。
客户需要能够纵览整个数据图去访问每一个数据对象并且能够获取和设置每一个数据对象域的能力。客户也需要序列化和反序列化一个数据图。如使用XML DAS时,数据图能够被序列化一个XML。
DAS writer必须能够为数据图定义一个模型,创建一个新的数据图,产生更改历史信息,并且能够访问更改历史信息。
一个数据图包含一个(更改概要)ChangeSummary,通过ChangeSummary,能够访问数据图中任何一个数据对象的更改历史。当DAS返回一个数据图时,ChangeSummary应该是空的。如果DAS的客户修改了数据对象的状态,例如创建或者删除,这些更改的概要将被记录在ChangeSummary中。
如果一个客户端将一个修改后的数据图发送给DAS,DAS将会进行数据图的错误性检查,这些错误主要包括数据图是否缺少封闭,属性值是否越界,由树形子图生成的属性或数据对象的选择,不同的约束或者任何针对DAS的特殊限制(如XML模式的特殊校验)。这里,封闭(Closure)指任何一个该数据图的数据对象的引用均指向自身内部的一个对象。通常,DAS使用异常报告更新的问题。
一个数据图可能没有封闭,此时,终端用户可以临时通过数据对象接口修改该数据图所包含的数据对象。然而在所有的用户操作完成后,数据图将重建一个封闭。DAS只能操作带有封闭的数据图。
分享到:
相关推荐
标题:“SDO_SDO的JAVA实现规范”指向了Service Data Objects(SDO)在Java环境下的具体实现标准,这是一份详尽的技术文档,旨在指导开发人员如何在Java平台上有效地使用SDO技术。 描述中的“SDO_SDO的JAVA实现规范...
**SDO(Service Data Object)**是Oracle公司提出的一种数据访问接口标准,它为服务导向架构(SOA)提供了一种统一的数据管理模型。SDO的主要目标是简化数据的访问和处理,使得在不同系统之间交换数据变得更加方便。...
### SDO for Java 规范 该文档主要介绍了SDO在Java环境下的实现规范。版本号为2.1.0,发布于2006年11月。参与制定此规范的作者包括来自BEA Systems、IBM、Oracle、SAP等公司的专家。这些贡献者共同设计并定义了SDO...
《SDO的Java实现规范》是一本关于Service Data Objects (SDO) 技术在Java环境下的详细指南。本书由来自BEA Systems、IBM、Oracle、SAP等知名公司的多位专家共同编写,旨在为开发者提供一个统一的数据操作模型,以...
5. **跨语言兼容性**:尽管最初的规范是针对Java环境设计的,但SDO的理念和架构也适用于其他编程语言。 三、SDO规范的组成部分 SDO规范由多个部分组成,涵盖了数据模型定义、数据访问API、数据持久化策略等方面。...
- EJB(Enterprise JavaBeans)是Java EE(Java Platform, Enterprise Edition)规范的一部分,用于构建分布式、事务型、可扩展的企业级应用。 3. 服务架构与分布式计算 - SDO(Service Data Objects)是一种数据...
《SOA SDO数据服务规范》(Service Data Objects for Java Specification Version 2.01, November 2005)是由IBM、BEA Systems Inc.、SAP AG、Oracle Corporation、Siebel Systems Inc.、Xcalia和Sybase Inc.等业界...
Service Data Object(SDO)是一种数据访问标准,由OASIS(Organization for the Advancement of Structured Information Standards)制定,旨在提供统一的数据访问框架,简化多源数据的处理。在分布式系统中,尤其...
"SDO_SDO的JAVA实现规范"详细介绍了如何在Java环境中使用SDO,包括其API、数据模型和数据变化跟踪机制。SDO的主要目标是简化数据处理并增强数据服务的互操作性。 3. **其他标签**:"SOA"代表面向服务的架构,这是一...
xtreme for Java是一款Java开发工具,它提供了对各种数据库系统的访问接口,包括Oracle Spatial。它的主要优点在于简化了Java应用程序与数据库之间的交互,提供了高效的连接管理、事务处理和SQL执行能力。 要连接到...
### ArcGIS 9.2 在 Vista 操作系统下的安装及 ArcGIS Engine SDK for Java 在 Eclipse IDE 中的导入 #### ArcGIS 9.2 在 Vista 下的安装步骤与注意事项 ArcGIS 9.2 是一款广泛使用的地理信息系统软件,但在 Vista ...
- **SDO 1.0 规范**:详细介绍了 SDO 的规范标准,包括核心概念、数据模型、API 设计等内容。 - **发布说明**:记录了各个版本的重要更新,帮助开发者了解新特性及兼容性问题。 #### 四、参考文档 - **API 参考**...
SDO(Service Data Objects),即服务数据对象,是一种旨在简化和服务导向架构(SOA)中的数据访问与编码的技术。通过统一处理不同来源的数据格式,SDO使得开发者能够更高效地管理和操作数据。 #### 二、SDO的历史...
**SDO概述** SDO(Service Data Object)是Oracle公司推出的一种数据访问接口标准,全称为Service Data ...对于希望深入理解SDO的读者,可以参考提供的链接或阅读SDO规范文档(如`SDO规范.doc`)以获取更多信息。
SDO,Service Data Objects,是一个由Oracle发起并被Java Community Process采纳的JSR(Java Specification Request)311。它定义了一种灵活的数据模型,以及用于在应用程序和数据源之间交换数据的一系列API。SDO...
SDO是一种基于客户端/服务器架构的机制,允许设备之间进行数据交换。SDO客户端可以是任何设备,而SDO服务器则是具有数据交换功能的设备。SDO客户端可以向SDO服务器请求读取或写入数据,SDO服务器则根据请求执行相应...
2. **SDO(Service Data Objects)**:SDO是Java平台上的一个API,它定义了一套标准的数据访问接口和模型,使得应用程序可以独立于具体的数据源访问数据。SDO支持动态和静态两种模式,动态模式下,数据对象可以任意...
**服务组件架构(Service Component Architecture,SCA)** 和 **服务数据对象(Service Data Object,SDO)** 是由OpenCSA组织发起的一组规范,旨在简化和服务化面向服务架构(SOA)的开发过程。这些规范通过定义...
书中探讨了SOA的关键技术和协议,如SOAP、WSDL、UDDI,以及相关的开发技术,如JAX-WS、Axis,还有SOA架构技术如JBI、SCA/SDO、OSGi等。 #### 面向资源架构ROA——REST的实践 ROA(Resource-Oriented Architecture...