技术开发 频道

DdlUtils实现Mobile Client开发篇

【IT168 技术文档】摘要:本文在介绍DdlUtils应用的基础上,对数据库模型以及DdlUtils实现Mobile Client的开发过程进行了重点说明。通过对开发过程中的一些注意点进行补充说明,让开发人员对DdlUtils实现Mobile Client有一个更深入的理解。

1  引言

使用DdlUtils可以实现分布式数据处理和数据库转移等Mobile Client应该具备的应用特征。所有的应用框架大致为是:以关系型数据库为中心,在分布式的客户端进行离线数据处理,再通过DdlUtils包来实现客户端与数据中心的同步。

2  DdlUtils核心概念

这里笔者觉得有必要向读者详细介绍DdlUtils的两个核心概念:数据库模型(Database Model)和平台(Platform)。只有深入了解了这两个概念,我们才能大致明白DdlUtils的实现机制。

2.1  数据库模型

首先我们以一个实际的数据库模型定义文件为例(下图1):
 
图1:DdlUtils用到的数据库模型定义文件

读者可以不难地看出,DdlUtils把数据库以及其中数据表的定义统一抽取成DdlUtils所认可的模式。其中XML结点中database元素对应数据库,table元素对应数据库中数据表,column元素对应数据表中每一字段。数据库,数据表和字段都由名称标识。对于字段,还存在是否主键,类型和大小等定义。

我们暂且不考虑DdlUtils为什么要将数据库的模型按照这些元素进行定义,但是我们可以知道:通过这个模型定义文件,我们已经完全知道数据库,数据表以及各字段的定义信息。

2.2  平台

DdlUtils将平台(Platform)定义为封装了与数据库相关的诸如查询,数据维护等功能的层面。言下之意就是所有数据库,数据表和字段的操作都纳入了平台的范围。所以DdlUtils的平台可以理解为数据库相关的操作平台。

可能有读者要问:既然是与数据库相关,那么对于不同的关系型数据库(RDBMS),对应的平台是否也是不同的?答案是肯定的。DdlUtils从平台接口实现了很多与各种RDBMS相关的子平台,例如:FirebirdPlatform(Firebird DB),MySqlPlatform(MySQL DB),PostgreSqlPlatform(PostgreSQL DB)等等。甚至对同一RDBMS不同版本的产品,其子平台也是不相同的。例如对于Oracle数据库的不同版本存在3个子平台:Oracle10Platform,Oracle8Platform和Oracle9Platform。

0
相关文章