当前位置: 首页 > 专利查询>潘胜怀专利>正文

一种基于数据模型驱动自动生成软件的方法技术

技术编号:28372594 阅读:14 留言:0更新日期:2021-05-07 23:59
本发明专利技术公开了一种基于数据模型驱动自动生成软件的方法,所述的方法包括以下步骤:S1:人工页面布局绑定数据或直接数学模型,S2:系统自动编译成间码,S3:间码编译器进行前后端数据库分离并编译成第三方语言(高级语言)同时创建管理系统,S4:编译和部署系统,S5:上线系统。大量减少重复代码编程,从而实现软件编写效率提升;使得系统能极好的响应需求变更;通过自定义业务表达语言的设计,使得系统强大的业务适应性的同时,又能完成前端后台和数据库代码的分离,以保证安全性;在增加了数据冗余的同时,保证了这个功能可以获得快速的查询,以保证瓶颈功能效率最大化。

【技术实现步骤摘要】
一种基于数据模型驱动自动生成软件的方法
本专利技术涉及软件开发
,具体为一种基于数据模型驱动自动生成软件的方法。
技术介绍
目前,开发一个软件往往需要分别进行后台管理端、前端的编写,其中后台管理端包括用于存放数据类的bean包、用于访问数据的DAO层、用于接受用户请求并做出响应的servlet层,前端的编写包括软件的图像用户界面(UI)、管理端页面等,对于较为庞大的项目而言,软件往往需要相应的前后端工程师进行开发。对于后台管理端而言,很多bean包里的实体类以及对实体类进行处理的操作都具有一定的重复性,比如创建实体类、编写get、set方法等,以及DAO层对数据库进行增删改查,这些操作简单而重复,当工程师手动编写这些简单、基础却又不可缺少的代码时,无疑浪费了很多宝贵的时间。其次,一款成功的软件要能防御来自网络的攻击,这一点也是重中之重。每一款软件的图形用户界面都是不同的,软件的管理端页面必须实现对后台数据的管理,需要实现可视化的数据管理,将这些基础功能集成到前端页面里,也是必不可少的工作,但编写这些基础功能无疑也是重复的工作,比如对不同的数据都要有增删改查等等。综上,目前软件开发工作中存在的问题如下:1.成本:开发一个软件需要大量的人手,需要大量的时间。这就产生了不菲的成本,这还不包括软件开发过程中其它工作的停滞所带来的成本。2.需求变更:项目的开发、运营过程中需求的变化是一种常态,但是软件应对需求的变化特别是结构性的需求变化是非常困难的。两瓶毒药:大量的企业和公司需要大量的软件,而维持一个技术团队的成本是高昂的,但是使用外包的方式需求稍有变化外包公司的技术支持就弛懈、甚至停顿了。这就陷入了两瓶毒药选一瓶的尴尬。3.人工智能瓶颈:人工智能发展需要软件自身有强大的进化能力,而现在的遗传算法是无法满足的。提供一种计算机自我编程的方式变得迫切。4.设计缺陷:公司或企业在软件设计之初很少会有对高并发高安全性的设计,而间码将系统安全和并发设计内置进了系统中,并且用户是无感的。5.系统迭代:当企业或公司随着自身的发展需要升级功能甚至是升级系统并发级别时是无缝升级的。软件开发有很多基础、重复而必不可少的工作,目前人们仍未找到一种高效的办法来简化这些重复的工作,去重复编程工作愈发重要!基于此,本专利技术设计了一种基于数据模型驱动自动生成软件的方法,以解决上述提到的问题。
技术实现思路
本专利技术的目的在于提供一种基于数据模型驱动自动生成软件的方法,以解决上述提到的问题。为实现上述目的,本专利技术提供如下技术方案:一种基于数据模型驱动自动生成软件的方法,所述的方法包括以下步骤:S1:人工页面布局绑定数据或直接数学模型,①构建页面,并自动生成页面对应的项目,包括:S1.1.满足vue框架规范的前端H5页面,S1.2.前端页面访问后台对应的接口,S1.3.支持项目运行的其它后端java代码,S1.4.支持项目运行的其它后端项目配置文件;②编写数学模型,包括:S1.5.编写数据实体,S1.6.在实体上指明数据关系,包括主外键关系;分组及自定义分组;排序及自定义排序;字段变化记录;基于时间进行管理,S1.7.将数据库中存在的不是以上基本业务能表达的业务,使用书写业务逻辑;S2:系统自动编译成间码,S2.1.管理数据实体,S2.2.管理每个实体下的字段,S2.3.建立实体之间的数据关系,S2.4.组织后台与数据库之间的业务表达语言;S3:间码编译器进行前后端数据库分离并编译成第三方语言,包括高级语言,同时创建管理系统,包括数据转换;业务转换;根据模型生成DAO及存储过程;S4:编译和部署系统,包括自动生成权限系统、后台管理系统以及数据挖掘系统,其中,权限系统包括权限用户角色、权限页面、权限对应表以及权限地址,首先检查该地址、该用户是否有权限,再检查是否拥有该字段的修改权限,检查拥有权限以后,进入后台管理系统,管理员可通过间码或其他高级语言对数据库进行修改(包括增删改查操作);设计前端页面;编译前端页面;打包以上代码完成代码自动生成;S5:上线系统。优选的,所述页面包括:A.使用新建,导入修改和以某项目为蓝本重建项目三种方式加载项目,B.为已加载的项目新建手机和电脑两种客户端,C.同时编辑多个项目,D.同时编辑项目的多个客户端,E.通过树形结构展现客户端的页面结构,F.选中页面可以编辑页面,G.选中控件可以调整控件的部分样式,H.在页面效果中删除控件和改变控件的排列关系,I.从页面控件中将控件拖入页面效果。优选的,所述S2具体包括:a.设定一个类,该类中拥有一个字段集合和一个方法集合,b.建立字段类,完成字段的转换工作,c.建立方法类,继续编译方法和转换方法,d.将方法体转换为多条语句,其中区域和方法均继承自语句,而区域中可以包含多条语句,e.包含关键字的区域例如:if、for等每个关键字有自己的实现类,均继承自区域,if、catch等这些包含兄弟节点的关键字还有他对应的上下游关系的实现,f.非区域的语句以赋值关系划分,被翻译为左句和右句,其中左句被右句赋值,g.左右句分别翻译为对象路径和表达式,h.一个对象路径至少包含一个节点,节点包括变量、字段、方法、对象,i.当节点路径是一个方法时,方法的每一个参数是一个语句,并形成递归。优选的,所述S3中,所述数据转换包括S3.1.一个数据实体对应一个bean类和一张数据库表,并为表和类名之间的关系设定规则,为表建立主键,并为主键名设立规则,数据实体中的一个字段对应表中的一个字段和实体中的一个字段,同时为字段名的生成建立规则,S3.2.为实体中具有分组、排序、变化记录、时间管理的字段建立映射表,以保证这些功能可以快速的查询。优选的,所述S3中,所述业务转换包括S3.3.使用后台与数据库之间的业务表达语言所编译的结构,将代码翻译为数据库中的存储过程和后台对存储过程事务的调用,并封装成一个通用型的数据结构接收数据库返回的值,S3.4.该通用型数据结构主要由存储过程中out的值和查询值两个部分组成,涵盖了数据查询、是否执行成功、受影响数量等信息,S3.5.建立存储过程、后台调用类和方法与业务设计中名字命名之间的关系,建立调用存储过程的规则,按照该规则可以从其它位置调用设计好的业务。优选的,所述S3中,所述模型生成DAO及存储过程包括S3.6.按照模型对应的bean类,生成模型的增加数据,删除数据和修改数据的方法,S3.7.按照模型字段上的外键关系,生成关于外键的查询,S3.8.按照模型的分组本文档来自技高网
...

【技术保护点】
1.一种基于数据模型驱动自动生成软件的方法,其特征在于:所述的方法包括以下步骤:/nS1:人工页面布局绑定数据或直接数学模型,/n①构建页面,并自动生成页面对应的项目,包括:/nS1.1.满足vue框架规范的前端H5页面,/nS1.2.前端页面访问后台对应的接口,/nS1.3.支持项目运行的其它后端java代码,/nS1.4.支持项目运行的其它后端项目配置文件;/n②编写数学模型,包括:/nS1.5.编写数据实体,/nS1.6.在实体上指明数据关系,包括主外键关系;分组及自定义分组;排序及自定义排序;字段变化记录;基于时间进行管理,/nS1.7.将数据库中存在的不是以上基本业务能表达的业务,使用书写业务逻辑;/nS2:系统自动编译成间码,/nS2.1.管理数据实体,/nS2.2.管理每个实体下的字段,/nS2.3.建立实体之间的数据关系,/nS2.4.组织后台与数据库之间的业务表达语言;/nS3:间码编译器进行前后端数据库分离并编译成第三方语言,包括高级语言,同时创建管理系统,包括/n数据转换;/n业务转换;/n根据模型生成DAO及存储过程;/nS4:编译和部署系统,包括/n自动生成权限系统、后台管理系统以及数据挖掘系统;/n设计前端页面;/n编译前端页面;/n打包以上代码完成代码自动生成;/nS5:上线系统。/n...

【技术特征摘要】
1.一种基于数据模型驱动自动生成软件的方法,其特征在于:所述的方法包括以下步骤:
S1:人工页面布局绑定数据或直接数学模型,
①构建页面,并自动生成页面对应的项目,包括:
S1.1.满足vue框架规范的前端H5页面,
S1.2.前端页面访问后台对应的接口,
S1.3.支持项目运行的其它后端java代码,
S1.4.支持项目运行的其它后端项目配置文件;
②编写数学模型,包括:
S1.5.编写数据实体,
S1.6.在实体上指明数据关系,包括主外键关系;分组及自定义分组;排序及自定义排序;字段变化记录;基于时间进行管理,
S1.7.将数据库中存在的不是以上基本业务能表达的业务,使用书写业务逻辑;
S2:系统自动编译成间码,
S2.1.管理数据实体,
S2.2.管理每个实体下的字段,
S2.3.建立实体之间的数据关系,
S2.4.组织后台与数据库之间的业务表达语言;
S3:间码编译器进行前后端数据库分离并编译成第三方语言,包括高级语言,同时创建管理系统,包括
数据转换;
业务转换;
根据模型生成DAO及存储过程;
S4:编译和部署系统,包括
自动生成权限系统、后台管理系统以及数据挖掘系统;
设计前端页面;
编译前端页面;
打包以上代码完成代码自动生成;
S5:上线系统。


2.根据权利要求1所述的一种基于数据模型驱动自动生成软件的方法,其特征在于:所述页面包括:
A.使用新建,导入修改和以某项目为蓝本重建项目三种方式加载项目,
B.为已加载的项目新建手机和电脑两种客户端,
C.同时编辑多个项目,
D.同时编辑项目的多个客户端,
E.通过树形结构展现客户端的页面结构,
F.选中页面可以编辑页面,
G.选中控件可以调整控件的部分样式,
H.在页面效果中删除控件和改变控件的排列关系,
I.从页面控件中将控件拖入页面效果。


3.根据权利要求1所述的一种基于数据模型驱动自动生成软件的方法,其特征在于:所述S2具体包括:
a.设定一个类,该类中拥有一个字段集合和一个方法集合,
b.建立字段类,完成字段的转换工作,
c.建立方法类,继续编译方法和转换方法,
d.将方法体转换为多条语句,其中区域和方法均继承自语句,而区域中可以包含多条语句,
e.包含关键字的区域例如:if、for每个关键字有自己的实现类,均继承自区域,if、catch这些包含兄弟节点的关键字还有他对应的上下游关系的实现,
f.非区域的语句以赋值关系划分,被翻译为左句和右句,其中左句被右句赋值,
g.左右句分别翻译为对象路径和表达式,
h.一个对象路径至少包含一个节点,节点包括变量、字段、方法、对象,
i.当节点路径是一个方法时,方法的每一个参数是一个语句,并形成递归。


4.根据权利要求1所述的一种基于数据模型驱动自动生成软件的方法,其特征在于:所述S3中,
所述数据转换包括
S3.1...

【专利技术属性】
技术研发人员:潘胜怀
申请(专利权)人:潘胜怀
类型:发明
国别省市:贵州;52

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

1