一种数据库平台的访问方法

文档序号:6439224阅读:124来源:国知局
专利名称:一种数据库平台的访问方法
技术领域
本发明涉及通信行数据处理技术领域,特别涉及一种数据库平台的访问方法。
技术背景
现有的软件系统中往往一个软件只能对应一种数据库,比如ORACLE、SQL、MySQL 等,缺乏灵活性。但是通常情况下,每个客户由于自己的数据或者性能要求,对于数据库要求也可能不一样。这样就会导致一个软件对于不同的数据库需要作不同的处理,相当于开发多套程序,开发人员工作量大(比如每个功能对于不同的数据库,可能要编写不同的SQL 语句),维护代价大(比如在使用中发现某个功能有缺陷,调整时需要对于不同的数据库都要调整),软件使用非常不灵活。发明内容
本发明要解决的问题是克服现有技术的不足而提供一种能用统一接口访问多种数据库平台的数据库平台的访问方法。
为实现上述目的,本发明的技术方案为一种数据库平台的访问方法,访问系统的逻辑分层包括持久对象层、业务逻辑层和数据库访问层,所述访问方法包括如下步骤客户端把需要入库的数据组合成为一个持久对象传入到业务逻辑层; 在业务逻辑层对客户端传入的数据进行有效性验证,如果验证无效,则返回给客户端, 如果验证有效,则通过统一的数据访问接口传入到数据库访问层;数据库访问层判断当前使用的数据库是ORACLE或SQL或MySQL ;判断后调用不同的访问方式,将客户端传入的数据写入到当前数据库中;数据库访问层将数据入库,失败则返回入库失败的信息,成功则返回数据入库成功信肩、ο
进一步的,所述在业务逻辑层对客户端传入的数据进行有效性验证条件为字段是否为空或字段是否符合数据库的字段要求。
与现有技术相比,本发明具有如下有益效果本发明利用了业务逻辑层与数据库访问层的分层方式,统一了业务逻辑层对数据库访问层的接口,可以通过配置适应多种数据库平台,同时支持多个数据库,如ORACLE、SQL、 MySQL0


图1为本发明逻辑分层结构图; 图2为本发明访问流程图。
具体实施方式
以下结合实施例及附图对本发明进行详细的描述。
数据库(DataBase,DB)是一个长期存储在计算机内的、有组织的、有共享的、统一管理的数据集合。它是一个按数据结构来存储和管理数据的计算机软件系统。
而对象-关系映射(Object/Relation Mapping,简称0RM)是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储系统。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。 内存中的对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象-关系映射(ORM)系统一般以中间件的形式存在,主要实现程序对象到关系数据库数据的映射。
如图1所示,本发明数据库平台的访问系统的逻辑分层为持久对象层、业务逻辑层和数据库访问层。
采用ORM方法要求在设计中首先要分析问题域,找出所有问题域中相关事务,从中抽象出对象;然后从抽象中的对象中找到所有的持久化对象(P0,Persistent Object), 所谓持久对象就是由数据库管理系统负责管理的,可以持久保留,将来可被提取的对象,将这些持久对象以“一类一表格”的原则映射到数据库中,通过数据库管理系统建立表格;然后定义持久对象。持久化对象层在系统中被业务逻辑层和数据库访问层使用。
业务逻辑层逻辑分层结构的位置很关键,其处于数据库访问层与表示层(即客户端)中间,起到了数据交换中承上启下的作用,同时用于做一些有效性验证的工作,以更好的保证程序运行的健壮性。验证完成后,通过统一的数据访问接口传入到数据库访问层。
统一的数据库访问层对应不同的数据库,均采用统一的数据访问接口,统一了业务层对数据库访问层的接口。数据库访问层根据业务逻辑层传入的数据分辨出当前的系统对应的数据库是什么,是ORACLE,还是SQL,或者其它数据库。在数据库访问层中,所有持久对象均采用“双构造函数”方法在程序中进行构造,其中,一个构造函数参数为所有初始化该持久对象的值,封装数据模块中“存”操作,另一个构造函数的参数为唯一标识该持久对象的值,封装数据模块中“取”操作。其它数据库操作由相应方法封装,所有与数据库层发送交互的动作,均放在专门的数据模块中,由中间件层相应方法封装。
本发明利用了业务层与数据访问层的分层方式,以及ORM的多元访问技术,组成了一种支持多个数据库平台的访问方法。
图2,本发明数据库平台的访问方法包括如下步骤1、客户端把需要入库的数据组合成为一个持久对象传入到业务逻辑层;2、在业务逻辑层对客户端传入的数据进行有效性验证,如果验证无效,则返回给客户端,如果验证有效,则通过统一的数据访问接口传入到数据库访问层;其中有效性验证条件可以为字段是否为空或字段是否符合数据库的字段要求。
3、数据库访问层判断当前使用的数据库是什么,是ORACLE或SQL或MySQLL,或者其它数据库;判断后调用不同的访问方式,将客户端传入的数据写入到当前数据库中;4、数据库访问层将数据入库,失败则返回入库失败的信息,成功则返回数据入库成功fn息ο
以上实施例仅用于说明本发明的技术方案,而非对其限制;尽管参照较佳实施例对本发明进行了详细的说明,所属领域的普通技术人员应当理解,依然可以对本发明的具体实施方式
进行修改或者对部分技术特征进行等同替换,而不脱离本发明技术方案的精神,其均应涵盖在本发明请求保护的技术方案范围当中。
权利要求
1.一种数据库平台的访问方法,其特征在于访问系统的逻辑分层包括持久对象层、 业务逻辑层和数据库访问层,所述访问方法包括如下步骤客户端把需要入库的数据组合成为一个持久对象传入到业务逻辑层; 在业务逻辑层对客户端传入的数据进行有效性验证,如果验证无效,则返回给客户端, 如果验证有效,则通过统一的数据访问接口传入到数据库访问层;数据库访问层判断当前使用的数据库是ORACLE或SQL或MySQL ;判断后调用不同的访问方式,将客户端传入的数据写入到当前数据库中;数据库访问层将数据入库,失败则返回入库失败的信息,成功则返回数据入库成功信息ο
2.根据权利要求1所述的数据库平台的访问方法,其特征在于所述在业务逻辑层对客户端传入的数据进行有效性验证条件为字段是否为空或字段是否符合数据库的字段要求。
全文摘要
本发明涉及一种数据库平台的访问方法。访问系统的逻辑分层为持久对象层、业务逻辑层和数据库访问层,访问方法包括如下步骤客户端把需要入库的数据组合成为一个持久对象传入到业务逻辑层;在业务逻辑层对客户端传入的数据进行有效性验证,验证无效返回给客户端,验证有效则通过统一的数据访问接口传入到数据库访问层;数据库访问层判断当前使用的数据库ORACLE或SQL或MySQL;判断后调用不同的访问方式,将客户端传入的数据写入到当前数据库中;数据库访问层将数据入库,失败则返回入库失败的信息,成功则返回数据入库成功信息。本发明统一了业务逻辑层对数据库访问层的接口,通过配置适应多种数据库平台,同时支持多个数据库。
文档编号G06F17/30GK102521277SQ20111038007
公开日2012年6月27日 申请日期2011年11月24日 优先权日2011年11月24日
发明者张青会, 李国栋, 李海辉 申请人:广东高新兴通信股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1