可配置的自动化生成数据库和数据访问的方法技术

技术编号:7759278 阅读:261 留言:0更新日期:2012-09-14 01:25
本发明专利技术的可配置的自动化生成数据库和数据访问的方法,将业务需求分析阶段设计的UML类图转换成XML文件,通过解析读取XML文件生成元数据信息,信息包括对象的可访问性,名称和类型等基本属性,通过用户对配置文件的选择,选取使用的数据库和业务处理语言,生成数据库模板,实体类模板和数据访问类模板,根据元数据信息和生成的模板,利用系统的生成器生成系统的数据库,实体类以及数据访问类,实现了从UML类图向数据库,实体类和数据访问等的转换,使得数据库和数据访问层可以自适应对象及其属性的变化,当数据库类型以及业务处理语言发生变更的时候,也仅需要改动UML类图的设计重新生成数据库及数据访问层即可,提高了系统的可扩展性和维护性。

【技术实现步骤摘要】

本专利技术涉及计算机应用
,尤其涉及一种可配置的自动化生成数据库和数 据访问的方法。
技术介绍
现有的计算机应用系统的开发过程包括从业务需求分析,数据库设计,详细设计 到开发和维护。其中UML建模,设计数据库,设计实体类,编写数据访问层是必不可少的。这 个过程中,存在以下问题1.系统规模。随着数据的繁杂和庞大,系统中的实体类,类的属性数量也会大大增 加。如果手工编写实体类和数据访问类,将会很耗费时间和精力。2.数据属性更新。随着企业的数据越来越多,数据结构发生变化,直接导致开始设 计的模型会发生变化,数据库结构发生变化,因此项目中的实体类以及数据访问层需要变 化。3.数据库以及业务处理语言的变更。一个大型的系统,其部署环境,语言支持可能 发生变化,这就要求系统的数据库和语言能够支持变化。针对以上问题,企业以及个人都做了改进及设计,比如Hibernate的出现,作为一 种持久化技术,它为开发大大的节省了时间,用户能够利用它生成数据访问类,但是这种方 法针对每个对象模型都得保存配置文件,随着项目的增大,配置文件的数量也随之增大,难 于管理。鉴于Hibernate在某些场合下的不适用,也有利用反射技术实现的数据持久化方 法被提出,这种方法避免了配置文件冗余的缺点,能够直接利用实体类生成数据访问层。但 是这种方法在需求发生变化,数据的属性有所添加或修改,数据库及业务语言发生变化的 时候,需要重新设计数据库,设计实体类以及生成对应的数据访问类。改动较多,工作量大。模型驱动架构MDA是一种比较流行的架构,利用此架构能够实现从模型向目标代 码的转换,但是此方法也很难避免数据库的大幅度改动带来的操作。可见目前的持久化技术和模型驱动架构很难满足数据属性更新快时,确保操作简 单有效,保证可扩展性和维护性。因此,当下需要迫切解决的一个技术问题就是如何能够提出一种有效的措施,以 解决现有技术中存在的问题。
技术实现思路
本专利技术所要解决的技术问题是提供一种可配置的自动化生成数据库和数据访问 的方法,有效克服现有技术中存在的问题。为了解决上述技术问题,本专利技术提供了一种可配置的自动化生成数据库和数据访 问的方法,包括根据业务需求设计UML类图,并将UML模型导出成XML文件,在内存中构造一棵 XML树,并利用D0M解析技术读取XML内容,生成元数据信息;利用配置文件选择当前使用的数据库类型和业务处理使用的面向对象语言,生成 各自对应的模板,包括数据库模板,实体类模板,数据访问类模板;根据元数据信息和生成的模板,利用系统的生成器生成数据库和实体类以及数据 访问类。进一步地,所述生成元数据信息包括对象的可访问性,对象的数据类型,对象的名 称。进一步地,所述配置文件包括对业务处理语言的选择,数据库的选择以及各个数 据库连接池的配置。进一步地,所述数据库模板是生成数据库脚本的模板,其中数据库表的名称与元 数据信息的节点名称相同,列的名称即元数据信息节点的属性名称,列的数据类型即属性 的类型在所选数据库中对应的类型。进一步地,所述实体类模板是为了生成系统中的实体层,主要包括,实体类的可访 问性,实体类的名称,实体类的属性名称,属性类型,根据不同的业务处理语言生成不同的 实体类代码。进一步地,所述数据访问类模板是根据数据库类型和业务处理语言类型生成的, 包括了选择配置好的数据库连接池,根据生成的实体类,利用反射机制从实体类中提取所 需要的字段名称和类型,构造数据的插入,删除,更新,查询操作,实现系统的数据访问类模 板。综上,本专利技术提供的,将业务需求 分析阶段设计的UML类图转换成XML文件,通过对XML文件的解析读取,生成元数据信息, 这些信息中包括了对象的基本属性,包括可访问性,名称,类型等。通过用户对配置文件的 选择,选取使用的数据库和业务处理语言,生成数据库模板,实体类模板和数据访问类模 板。根据元数据信息和生成的模板,利用系统的生成器生成系统的数据库,实体类以及数据 访问类,从而实现了从UML类图向数据库,实体类以及数据访问等的转换。本方法使得对于 数据库和数据访问层可以自适应对象及其属性的变化,无需大量的配置文件,也无需大量 的人工操作,当数据库类型以及业务处理语言发生变更的时候,也仅需要改动UML类图的 设计重新生成数据库及数据访问层即可,提高了系统的可扩展性和维护性。更进一步地,本方法利用UML类图直接生成了数据库和数据访问层,保证了开发 过程的简单、高效,无需编写大量冗余的代码,节省了开发时间。当需求变更的时候,此方法 更利于系统的维护和更新,由于数据库和数据访问都是由UML类图生成的,因此仅需要维 护UML模型图即可,降低了开发的风险。由于数据访问层是根据模板生成的,因此模板越完 善,生成的数据访问层的代码质量就越高,越能节省时间,提高效率,且由于自动化的生成 数据库和数据访问类,大大的节省了开发的时间,因此可以使得开发周期变短,开发成本降 低。附图说明图1是本专利技术的具体实施方式所述的可配置的自动化生成数据库和数据访问的 方法的流程示意图;图2是本专利技术的具体实施方式所述的方法流程图的上位结构框图。具体实施例方式下面结合附图和具体实施方式对本专利技术作进ー步详细的说明。本专利技术的目的是提出ー种,通过本 专利技术可以使得系统的开发过程更加自动化,随着业务需求的不断变化,系统能够适应变更, 避免了大量的配置文件的使用以及大量的人工编码过程,从而提高了系统的开发效率,可 扩展性和可维护性,降低了系统的开发成本。图I所示为的流程示意图,具体包 括步骤一分析系统的业务需求,使用建模工具如Rational Rose对分析出的类进 行建模,标出包括类的名称,类的可访问性,类的属性,属性对应的类型。将UML类图导出为 XML文件保存。类的属性中需要设计唯一的ID号,类型为长整型。本实施例中采用学生管理系统,以学生为例,设计学生的类图,并将此类图导出成 对应的XML文件。对生成的XML文件的解析和读取使用DOM解析技术,在内存中构造一棵树,并对其 内容进行解析读取,读取到的内容包括对象的名称,可访问性,对象的属性,属性的类型。步骤ニ 系统中的配置文件内容包括数据库的类型以及该类型对应的数据库连 接池;业务处理语言的类型。配置文件的使用是为了给用户提供数据库和业务处理语言类 型的选择,方便于系统的维护。系统提供的模板包括数据库模板,实体类模板和数据访问类模板。对各个模板的 要求包括I.数据库模板。数据库模板是为了生成数据库脚本。模板中包括数据库以及表的 建立。模板中提供了数据库脚本的基本框架以及数据库名称,表名称,列名称,列的类型,表 的主键參数的设置。其中数据库的名称已确定(默认为项目名称)。2.实体类模板。实体类模板是为了生成系统中的实体类。模板中包括实体类的框 架以及命名空间(已确定,即项目下的实体类),类名称,类的可访问性,类的属性名,属性 的类型參数的设置。3.数据访问类模板。数据访问类模板是为了生成系统中的数据访问类。模板中包 括了数据库的连接,对象的插入,删除,更新,查询操作,仅仅是框架,并没有具体的实现。步骤三根据元数据信息和生成的模板,利用系统的生成器生成数据库和实体类 以及数据访问类。利用系统的生成器生成数据库、实体类和数本文档来自技高网
...

【技术保护点】

【技术特征摘要】

【专利技术属性】
技术研发人员:何泾沙霍晓珍张玉强
申请(专利权)人:北京工业大学
类型:发明
国别省市:

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

1