【技术实现步骤摘要】
一种基于数据模型驱动自动生成软件的方法
本专利技术涉及软件开发
,具体为一种基于数据模型驱动自动生成软件的方法。
技术介绍
目前,开发一个软件往往需要分别进行后台管理端、前端的编写,其中后台管理端包括用于存放数据类的bean包、用于访问数据的DAO层、用于接受用户请求并做出响应的servlet层,前端的编写包括软件的图像用户界面(UI)、管理端页面等,对于较为庞大的项目而言,软件往往需要相应的前后端工程师进行开发。对于后台管理端而言,很多bean包里的实体类以及对实体类进行处理的操作都具有一定的重复性,比如创建实体类、编写get、set方法等,以及DAO层对数据库进行增删改查,这些操作简单而重复,当工程师手动编写这些简单、基础却又不可缺少的代码时,无疑浪费了很多宝贵的时间。其次,一款成功的软件要能防御来自网络的攻击,这一点也是重中之重。每一款软件的图形用户界面都是不同的,软件的管理端页面必须实现对后台数据的管理,需要实现可视化的数据管理,将这些基础功能集成到前端页面里,也是必不可少的工作,但编写这些基础功能无疑也是重复的工作,比如对不同的数据都要有增删改查等等。综上,目前软件开发工作中存在的问题如下:1.成本:开发一个软件需要大量的人手,需要大量的时间。这就产生了不菲的成本,这还不包括软件开发过程中其它工作的停滞所带来的成本。2.需求变更:项目的开发、运营过程中需求的变化是一种常态,但是软件应对需求的变化特别是结构性的需求变化是非常困难的。两瓶毒药:大量的企业和公司需要大 ...
【技术保护点】
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自动生成权 ...
【技术特征摘要】
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...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。