一种兼容多种数据库的系统设计方法技术方案

技术编号:25520986 阅读:64 留言:0更新日期:2020-09-04 17:11
本发明专利技术公开了一种兼容多种数据库的系统设计方法,本发明专利技术通过融合策略模式加工厂模式并进行改进,遵守大部分GRASP原则和常用设计原则,高内聚、低偶合;解决了程序中使用多重条件转移语句,使系统更灵活,并易于扩展;去掉了代码中大量的if‑else嵌套,消除了代码中的大量的重复代码,增加了代码的可读性,可重用性,可拓展性;当需要新增对数据库的支持时,无需在原本的代码中修改,只需要专注于新增数据库的支持研发,减少了代码的维护成本,完美的兼容各种关系型和非关系型数据库。

【技术实现步骤摘要】
一种兼容多种数据库的系统设计方法
本专利技术涉及软件设计领域,特别是涉及一种兼容多种数据库的系统设计方法。
技术介绍
有时我们的系统需要支持多种数据库,如即要支持MSSQL又要同时支持Oracledatabase.而如果我们分别实现这多种数据库的操作方式,就不能很好的达到软件设计的目标:高内聚,低偶合。很容易造成程序中的代码冗余,增加了后期维护成本且不易扩展。工厂模式允许在代码执行时实例化对象。以数据库为例,工厂需要根据不同的参数,生成不同的实例化对象。最简单的工厂就是根据传入的类名称实例化对象,例如传入MySQL,就调用MySQL的类并实例化,如果是SQLite,则调用SQLite的类并实例化,设置可以有excel、txt等“数据库类”。工厂类就是这样,只负责生产对象,而不负责对象的具体内容。策略模式属于对象的行为模式。其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。现有的设计模式会使用大量的if-else的多层嵌套,导致本文档来自技高网...

【技术保护点】
1.一种兼容多种数据库的系统设计方法,其特征在于,包括以下步骤:/nS1. 将数据库类型及操作方法抽象形成接口;/nS2. 创建数据库策略工厂;/nS3. 判断数据库工厂层是否存在目标数据库映射;若是,则进行步骤S4;若否,则抛出异常;/nS4. 数据库工厂层通过数据库策略层返回数据库实例;/n其中,所述数据库策略工厂包括数据库策略层和数据库工厂层。/n

【技术特征摘要】
1.一种兼容多种数据库的系统设计方法,其特征在于,包括以下步骤:
S1.将数据库类型及操作方法抽象形成接口;
S2.创建数据库策略工厂;
S3.判断数据库工厂层是否存在目标数据库映射;若是,则进行步骤S4;若否,则抛出异常;
S4.数据库工厂层通过数据库策略层返回数据库实例;
其中,所述数据库策略工厂包括数据库策略层和数据库工厂层。


2.根据权利要求1所述的一种兼容多种数据库的系统设计方法,其特征在于,所述步骤S1具体为:将数据库类型抽象为关系型数据库接口和非关系型数据库接口,数据库按照分类实现对应类型接口,得到相应的实现类。


3.根据权利要求1所述的一种兼容多种数据库的系统设计方法,其特征在于,所述数据库策略工厂,用于维护数据库与实现类之间的映射。


4.根据权利要求1所述的一种兼容多种数据库的系统设计方法,其特征在于,所述步骤S3具体为通过将S1中的实现类与数据库工厂内对应的数据库种类进行映射。


5.根据权利要求1所述的一种兼容多种数据库的系统设计方法,其特征在于,当需要拓展数据库支...

【专利技术属性】
技术研发人员:曹亮刘魁邓羽平
申请(专利权)人:成都信息工程大学
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1