数据管理类的软件系统代码自动生成方法技术方案

技术编号:23445319 阅读:23 留言:0更新日期:2020-02-28 19:38
本发明专利技术公开了数据管理类的软件系统代码自动生成方法,包括:完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段;编写代码生成工具,通过所述代码生成工具读取数据库内的数据结构元数据;建立数据结构元数据的实体映射类变量及代码文件生成逻辑;根据实体映射类产量,采用模版引擎语法结合代码规范,编写模版文件;配置各个代码文件生成的目录;运行代码生成工具,将表结构信息加载到实体映射类变量;将加载后的实体映射类变量遍历输入到模版文件中,生成代码文件至指定的目录;对目录内的代码文件进行微调,补充个性的业务逻辑,完成增删改查功能及单元测试编码工作。对指定目录的具体代码进行人工调整,以补充个性业务逻辑。

Automatic code generation method of software system for data management

【技术实现步骤摘要】
数据管理类的软件系统代码自动生成方法
本专利技术涉及互联网
,尤其涉及一种数据管理类的软件系统代码自动生成方法。
技术介绍
在软件开发过程中,应用软件中的数据管理类的软件系统,很大一部分工作都是对各功能模块的增、删、改、查及对应的单元测试进行代码编写,在特定的开发语言及技术框架下,除了各模块数据库结构(表、字段)不一样外,很大一部分的代码结构是相同的。如何通过引入模板引擎技术为相同代码结构的文件定制模板,并将数据库结构输入到模板文件中,自动生成代码文件到指定文件目录是有意义的研究方向。在此基础上,软件开发人员只需要做少量的代码调整,即可完成增、删、改、查功能及对应的单元测试代码编写,将大大减少软件开发人员的工作,减少代码错误,提高代码质量。公开于该
技术介绍
部分的信息仅仅旨在加深对本专利技术的总体
技术介绍
的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域技术人员所公知的现有技术。
技术实现思路
本专利技术实施例提供了一种数据管理类的软件系统代码自动生成方法,旨在解决上述问题。以自动完成数据管理类的软件系统中增删改查及相应单元测试代码的编写工作,目的在于减少开发工作量的同时提高代码质量。本专利技术实施例提供了一种数据管理类的软件系统代码自动生成方法,包括以下步骤:完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段;编写代码生成工具,通过所述代码生成工具读取数据库内的数据结构元数据;建立数据结构元数据的实体映射类变量及代码文件生成逻辑;根据实体映射类产量,采用模版引擎语法结合代码规范,编写模版文件;配置各个代码文件生成的目录;运行代码生成工具,将表结构信息加载到实体映射类变量;将加载后的实体映射类变量遍历输入到模版文件中,生成代码文件至指定的目录;对目录内的代码文件进行微调,补充个性的业务逻辑,完成增删改查功能及单元测试编码工作。其进一步技术方案为,所述步骤完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段,包括以下步骤:确定软件开发语言;根据软件开发语言进行技术框架选型;按照技术框架制定代码规范;根据代码规范完成数据库建模设计。其进一步技术方案为,所述步骤运行代码生成工具,将表结构信息加载到实体映射类变量中的表结构信息包括表名、字段名、数据类型、长度、是否必填和默认值信息。其进一步技术方案为,所述步骤建立数据结构元数据的实体映射类变量及代码文件生成逻辑中的数据结构元数据实体映射类变量包括:模块实体类变量、表实体类变量和字段实体类变量。其进一步技术方案为,所述步骤配置各个代码文件生成的目录是指按照软件项目工程目录配置各个代码文件生成的目录。本专利技术实施例提供了数据管理类的软件系统代码自动生成方法。其中,所述方法包括:完成软件开发前置工作,确定使用的开发语言和技术框架选型,制订代码规范,完成数据库建模设计;引入模板引擎技术,根据开发语言语法、技术架构、代码规范、代码文件样本、模板引擎技术语法编写模板文件;编写代码生成工具,该工具能从指定数据库读取数据结构元数据,或从数据库模型文件读取数据结构元数据,依据定制的规则,调用模板引擎技术将数据结构元数据(数据库表名、字段名、数据类型、长度、是否必填、默认值等)输入到模板文件,生成代码文件到指定目录;开发人员运行代码生成工具生成代码,并对自动生成的代码做少量的调整,补充自己特定的业务逻辑,即可完成软件开发工作。本方法主要为数据管理类的软件系统中增删改查功能及对应单元测试等代码结构比较固定,没有特定复杂的业务逻辑的代码编写提供一种代码自动生成思路,减少代码编写工作,提高代码规范和质量,为软件开发人员释放出更多时间,专注于特定业务逻辑部分代码的编写。下面结合附图和具体实施例对本专利技术作进一步描述。附图说明为了更清楚地说明本专利技术实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例提供的数据管理类的软件系统代码自动生成方法的流程示意图;具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。还应当理解,在此本专利技术说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本专利技术。如在本专利技术说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。还应当进一步理解,在本专利技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。请参阅图1,图1是本专利技术实施例提供的数据管理类的软件系统代码自动生成方法的流程示意图。如图所示,一种数据管理类的软件系统代码自动生成方法,包括以下步骤:S100完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段。S200编写代码生成工具,通过代码生成工具读取数据库内的数据结构元数据;S300建立数据结构元数据的实体映射类变量及代码文件生成逻辑;S400根据实体映射类产量,采用模版引擎语法结合代码规范,编写模版文件,包含前端html文件、后端Java控制器类文件、业务层接口类文件、业务层实现类文件、POJO实体类文件、持久层接口类文件、Mybatis的Mapping.xml配置文件、单元测试类文件。S500配置各个代码文件生成的目录;S600运行代码生成工具,将表结构信息加载到实体映射类变量;S700将加载后的实体映射类变量遍历输入到模版文件中,生成代码文件至指定的目录;S800对目录内的代码文件进行微调,补充个性的业务逻辑,完成增删改查功能及单元测试编码工作。其中步骤S100完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段,包括以下步骤:S101确定软件开发语言,以Javaweb开发为例。S102根据软件开发语言进行技术框架选型,以Java的SSM(SpringMVC+Spring+Mybatis)为例,增删改查功能通常会有前端html文件、后端Java控制器类、业务层接口类、业务层实现类、POJO实体类、持久层接口类、Mybatis的Mapping.xml配置文件。S103按照技本文档来自技高网...

【技术保护点】
1.数据管理类的软件系统代码自动生成方法,其特征在于,包括以下步骤:/n完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段;/n编写代码生成工具,通过所述代码生成工具读取数据库内的数据结构元数据;/n建立数据结构元数据的实体映射类变量及代码文件生成逻辑;/n根据实体映射类产量,采用模版引擎语法结合代码规范,编写模版文件;/n配置各个代码文件生成的目录;/n运行代码生成工具,将表结构信息加载到实体映射类变量;/n将加载后的实体映射类变量遍历输入到模版文件中,生成代码文件至指定的目录;/n对目录内的代码文件进行微调,补充个性的业务逻辑,完成增删改查功能及单元测试编码工作。/n

【技术特征摘要】
1.数据管理类的软件系统代码自动生成方法,其特征在于,包括以下步骤:
完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段;
编写代码生成工具,通过所述代码生成工具读取数据库内的数据结构元数据;
建立数据结构元数据的实体映射类变量及代码文件生成逻辑;
根据实体映射类产量,采用模版引擎语法结合代码规范,编写模版文件;
配置各个代码文件生成的目录;
运行代码生成工具,将表结构信息加载到实体映射类变量;
将加载后的实体映射类变量遍历输入到模版文件中,生成代码文件至指定的目录;
对目录内的代码文件进行微调,补充个性的业务逻辑,完成增删改查功能及单元测试编码工作。


2.根据权利要求1所述的数据管理类的软件系统代码自动生成方法,其特征在于,所述步骤完成软件开发前置工作,以建立软件系统所需要的数据库及相关字段,包括以下步骤...

【专利技术属性】
技术研发人员:陆腾飞刘军辉张松柏邓平
申请(专利权)人:深圳市泰洲科技有限公司
类型:发明
国别省市:广东;44

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

1