·软件知识库 ·模板素材库
注册 | 登录

您所在的位置: INDEX > eos > 数据建模与开发

数据建模与开发

许杰 Sun Jul 05 12:01:51 CST 2015 字号:

在业务系统开发中,与数据开发有关的是两个方面:关系数据模型设计和实体域模型设计。EOS产品本身实现了关系数据模型和实体域模型间的映射。他们的关系如下图所示:

从图中可以看出,EOS的映射方式是SDO-R映射(从SDO到关系的映射)。SDO是服务数据对象(Service Data Object)的简称,它是一个关于实体模型的接口规范,EOS的实体域模型实现了这套规范。

在EOS的数据开发过程中,用户自己实现关系数据模型,然后通过反向工程用EOS建立系统的实体域模型。在对实体进行操作时,用户不需要关心数据库表结构,而是使用EOS提供的接口来实现对数据库的访问;这样改变了通过运行SQL语句进行数据库查询和更新的做法,从而屏蔽技术细节,并提供更好的跨数据库的移植性。

相关概念

SDO(Service Data Object)
SDO是一套SOA数据编程模型的规范,它规定了一系列的接口;它的主要目标是适合异构的数据源的数据,并使得用户对这些数据用统一的接口进行访问。具体内容请参考相关规范内容。

数据实体
数据实体是一个抽象概念,它描述了数据结构的名称和类型信息。在EOS中,数据实体包括持久化实体和非持久化实体两类。

持久化实体
持久化实体是一种特殊类型的实体,它除了描述数据结构的名称、类型等等内容之外,还定义了数据库表结构和实体属性之间的对应关系。

每个持久化实体必须对应一个数据库表。持久化实体里的简单类型的属性可以直接和字段做映射,如果是个复杂类型的属性则需要通过关联关系来设置映射。

定义持久化实体后,我们可以通过操作持久化实体对象来完成数据库表操作。例如:持久化实体com.primeton.samples.base.das.User和数据库表USERS映射,那么对实体User进行增删改查操作实际上就是对USERS表的增删改查。

非持久化实体
非持久化实体是一种特殊类型的实体,它的作用类似DTO(数据传输对象,Data Transfer Object)对象。非持久化实体可以关联JavaBean,也可以关联持久化实体。不能对非持久化实体执行数据库操作。

查询实体
查询实体是一种特殊类型的持久化实体。查询实体通过定义一句查询SQL语句或一个数据库视图来指明数据是如何获取的,并设置获取后的数据如何映射到一个实体。查询实体只能用来执行数据库查询操作。

数据集
数据集是一系列实体的集合,用来统一管理实体。

命名SQL
命名SQL给一个SQL起一个唯一标识,并且指定如何处理SQL所需要的参数和执行完后的结果。命名SQL可以在参数和返回值中使用实体,用户可以用命名SQL执行对应SQL的全部操作。

命名SQL集
命名SQL集是一系列命名SQL的集合,用来统一管理命名SQL。



『相关搜索』
版本信息:kms v1.3 鄂ICP备2023004815号-1 51LA统计