CN113835693A - 代码生成方法、装置、电子设备、存储介质 - Google Patents
代码生成方法、装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN113835693A CN113835693A CN202111080482.2A CN202111080482A CN113835693A CN 113835693 A CN113835693 A CN 113835693A CN 202111080482 A CN202111080482 A CN 202111080482A CN 113835693 A CN113835693 A CN 113835693A
- Authority
- CN
- China
- Prior art keywords
- code
- template
- component
- end page
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 230000004044 response Effects 0.000 claims abstract description 7
- 230000006870 function Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 9
- 230000008676 import Effects 0.000 claims description 7
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000011161 development Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000009877 rendering Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011534 incubation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/33—Intelligent editors
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了代码生成方法、装置、电子设备、存储介质。所述代码生成方法包括:响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。从而用户可以根据实际需求对待配置参数进行配置。
Description
技术领域
本发明涉及计算技术领域,尤其涉及一种代码生成方法、装置、电子设备、存储介质。
背景技术
为了提高开发人员的代码开发效率,目前越来越多的开发系统能够实现代码的自动编写或者半自动编写。然而关于渲染代码,目前均是根据实际应用场景的需求撰写,无法适用于不同的页面框架,复用率低。
发明内容
本发明要解决的技术问题是为了克服现有技术中渲染代码是根据应用场景的需求撰写,无法适用于不同的页面框架,复用率低的缺陷,提供一种代码生成方法、装置、电子设备、存储介质。
本发明是通过下述技术方案来解决上述技术问题:
第一方面,提供一种代码生成方法,应用于电子设备,所述代码生成方法包括:
响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;
获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
可选地,确定所述代码模板中的待配置参数,包括:
若所述代码模板为基于template标签得到的模板,则将所述代码模板转换成json格式;
确定json格式的代码模板中的待配置参数。
可选地,所述生成请求包括所述前端页面代码的类型;
所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
可选地,所述前端页面代码的类型包括uni-app和element-ui。
可选地,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
所述代码生成方法还包括:
从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码;
将所述目标模板子代码组合成所述代码模板。
可选地,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成方法还包括:
根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
第二方面,提供一种代码生成装置,应用于电子设备,所述代码生成装置包括:
第一确定模块,用于响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
第二确定模块,用于确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性用于绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件用于绑定至对应于所述组件的第二数据源;
第一导入模块,用于获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
可选地,所述第二确定模包括:
转换单元,用于在所述代码模板为基于template标签得到的模板的情况下,将所述代码模板转换成json格式;
确定单元,用于确定json格式的代码模板中的待配置参数。
可选地,所述生成请求包括所述前端页面代码的类型;
所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
可选地,所述前端页面代码的类型包括uni-app和element-ui。
可选地,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
所述代码生成装置还包括:
第三确定模块,用于从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码,并将所述目标模板子代码组合成所述代码模板。
可选地,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成装置还包括:
建立模块,用于根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
第二导入模块,用于将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
第三方面,提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现上述任一项所述的代码生成方法。
第四方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述任一项所述的代码生成方法的步骤。
本发明的积极进步效果在于:发明实施例中,待配置参数的属性和事件是动态绑定的,相当于开放了render待配置参数的属性和事件的配置接口,从而用户可以根据实际需求对待配置参数进行配置。且通过属性和事件的方式配置待配置参数,可以适用于各类代码开发语言的场景,使得利用一套代码模板开发得到多种语言代码成为了可能。
附图说明
图1为本发明一示例性实施例提供的一种代码生成方法的流程图;
图2为本发明一示例性实施例提供的另一种代码生成方法的流程图;
图3为本发明一示例性实施例提供的一种用于实现代码生成方法的平台的架构分层图;
图4为本发明一示例性实施例提供的一种代码生成装置的模块示意图;
图5为本发明一示例实施例示出的一种电子设备的结构示意图。
具体实施方式
下面通过实施例的方式进一步说明本发明,但并不因此将本发明限制在所述的实施例范围之中。
图1为本发明一示例性实施例提供的一种代码生成方法的流程图,该方法应用于电子设备,参见图1,该方法包括以下步骤:
步骤101、响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板。
在一个实施例中,电子设备存储有多段模板子代码,不同的模板子代码用于实现不同的功能(或者服务),该功能与前端页面生成相关。开发人员可以根据对前端页面的实际业务需求提供配置需求信息,以供后续确定与配置需求信息相匹配的目标模板子代码,并将目标模板子代码组合成代码模板,作为生成前端页面的基础。
其中,电子设备还可以存储模板子代码的组合规则,在将目标模板子代码组合成代码模板时,基于组合规则进行子代码的组合。组合规则可以根据实际需求自行设置。
在一个实施例中,还提供用户页面,以便于用户输入配置需求信息。用户页面在获取到用户提供的配置需求信息时,可以生成配置需求请求并发送给电子设备。
用户页面可以展示输入框,以便于用户以文字描述的方式输入配置需求信息,电子设备对用户提供的配置需求信息进行分析,确定配置需求信息中的关键词,进而根据关键词与模板子代码的对应关系,确定对应于配置需求信息中的关键词的目标模板子代码。
用户页面可以展示多个需求选项,每个需求选项对应一个或者多个模板子代码,电子设备根据用户对于需求选项的选择,确定与被选择的需求选项对应的目标模板子代码。
步骤102、确定代码模板中的待配置参数。
其中,待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于组件名称的属性和对应于组件名称的事件,例如:el-input常用使用<el-input type=”text”@input=”handleInput”/>中的type对应text就是属性,input对应的handleInput就是方法;其中,属性的取值的数据类型是数组且属性用于绑定至对应于组件的第一数据源,事件的数据类型是数组且事件用于绑定至对应于组件的第二数据源。
开发人员可以根据对前端页面的实际需求动态绑定属性的数据源,以及动态绑定事件的数据源,从而组件的属性和事件不受限于一个应用场景,不受限于开发语言,可以满足各种开发语言需求的应用场景。
步骤103、获取各个待配置参数的取值,并将取值导入代码模板,以生成前端页面代码。
前端页面代码可用于实现页面渲染。生成前端页面代码后,就可以整体加载内容。前端页面代码例如可以是render(一种渲染工具)函数,主要是render-config(一个用来管理企业应用配置的工具)整体render配置,以及widgetConfig(数据插件配置)数据配置,内部判断render结构递归children(子节点)、slot(插槽)再次得到新的render,得到预览内容。
本发明实施例中,待配置参数的属性和事件是动态绑定的,相当于开放了render待配置参数的属性和事件的配置接口,从而用户可以根据实际需求对待配置参数进行配置。且通过属性和事件的方式配置待配置参数,可以适用于各类代码开发语言的场景,使得利用一套代码模板开发得到多种语言代码成为了可能。同时,基于本发明实施例提供的代码生成方法开发代码,具有数据复杂时可以大大减少编码;前端页面代码的模块化,易开发、易维护;效率高,安全性高等优点。
在一个实施例中,用户可以自行选择前端页面代码的类型,可以选择一种类型,也可以同时选择多种类型,关于前端页面代码的类型选择方式也可以借助用户界面实现,用户界面基于用户的类型选择生成请求,并发送给电子设备。
对应于组件的第一数据源和第二数据源与前端页面代码的类型相关联。
前端页面代码的类型可以但不限于包括uni-app和element-ui,或者PC(计算机)还是mobile(手机)。
在一个实施例中,待配置参数包括组件与数据表的表结构的对应关系;数据表用于记录对应于组件的业务数据;代码生成方法还包括:根据对应关系,建立组件与数据表的字段的关联关系,将关联关系导入代码模板,以生成对应于前端页面的后端代码。从而实现前后端同时生成代码。参见图2,图中示出了同时生成前后端代码的过程。本发明实施例中,由前端控制了json(一种轻量级的数据交换格式)的配置和code(代码)的生成,并且前端按平台定义了render。
在一个实施例中,能够实现多语言的切换。
上述任一实施例提到的生成请求可以是同一个,也即一个生成请求分别携带配置需求信息、前端页面代码的类型等;也可以生成多个生成请求,各个生成请求分别携带配置需求信息、前端页面代码的类型等。
图3是本发明一示例性实施例提供的一种用于实现代码生成方法的平台的架构分层图,从图上我们可以看出,核心包含后端服务、搭建基础设施、PaaS(Platform-as-a-Service:平台即服务)服务、研发中心、搭建产品5层。下面对每一层服务能力做介绍。
后端服务:基于Java(一门面向对象编程语言)框架实现的一个Server(服务)层,提供搭建平台数据接口和Socket(套接字)服务;
搭建基础设施层:目标提供搭建编辑器的开发环境。核心包含中后台搭建描述协议、低代码编辑器、插件生态、物料生态4个模块能力建设;
PaaS服务层:提供搭建编辑器的运行环境,使其能具备有完备的搭建配套服务能力;
研发中心层:业务研发的主阵地,提供云端一体化的研发流程。包含站点中心,应用中心,物料中心,数据中心4个功能模块;
搭建产品:最上一层是搭建产品层,是低代码作为PaaS平台或中台,目标孵化的各个垂直领域的搭建产品。
基于上述平台,可以实现多种框架的前端页面共同开发,例如uni-app与element-ui,两者具有共同点,也具有不同点。共同点在于,都是vue(用于构建用户界面的渐进式框架)页面,需要template、data、methods、生命周期等。不同点在于,使用的组件不一样,例如输入框,element-ui采用`<el-input v-model="model"@input="handleInput"/>`而uni-ui采用`<uni-easyinput v-model="model"@input="handleInput"/>`,可以理解render不一样,而定义的data、methods和生命周期一样,为了实现能同时开发uni-app与element-ui,要解决当前难点,就是需要把template转换成json,即可以通过render函数转换得到对应的template。
从而,在一个实施例中,在确定代码模板中的待配置参数时,若代码模板为基于template标签得到的模板,则将代码模板转换成json格式,并确定json格式的代码模板中的待配置参数。通过template标签写的模板,必须配合webpack使用,webpack可以配置VueLoader用于处理.vue的单页面组件文件,而VueLoader的核心就是Vue-template-compiler,用来把template转换成render函数。
直接写render函数的话,就是跳过了webpack的编译和vue的编译,源码中会直接调用你写的render函数生成模板
使用compileTemplate转换template为render函数。
核心json定义,先定义一个model(代码模型),用于配置整体数据,可以但不限于包括:组件名称(name)、对应的数据实体(grop)、类型(plat:[‘mobile’,‘PC’])等。
核心render代码,页面结构有不一致的tag,以及有不用的attrs,再根据model可以个性化控制内容和转换。
核心处理,Attrs是页面使用的属性,需要绑定数据到data(第一数据源),通过定义attr的值是数组,动态绑定到data(Vue实例观察的数据对象),例如定义‘v-model’:[‘formData.test’,123]通过处理转换成:
其中,“```”表示描述语言类型。
需要绑定到methods(事件)
通过定义事件的值是数组,动态绑定到data,例如定义‘@input’:[‘handleInput’,‘handleInput(val){console.log(“input”,val)}’]通过处理转换成
关于数据驱动这块,我们采用通过配置json数据的形式,配置组件的名称以及组件所有的属性,在经过render函数渲染,生成对应的结构代码。
例如生成uniapp组件中的<uni-easyinput placeholder="请输入内容"/>,配置的json数据如下:
同理配置element-ui中的<el-input placeholder="请输入内容"/>也一样,配置数据如下:
配置完成json数据之后,在通过内部的render渲染函数处理生成对应的结构代码。
上述任一实施例中,处理render的2种方式可以但不限于包括render.js和lowcode.js,Render.js用于绚丽实时预览的,Lowcode.js用户生产代码控制。
与上述代码生成方法实施例相对应的,本发明实施例还提供代码生成装置的实施例。
图4是本发明一示例性实施例提供的一种代码生成装置的模块示意图,代码生成装置,应用于电子设备,所述代码生成装置包括:
第一确定模块41,用于响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
第二确定模块42,用于确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性用于绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件用于绑定至对应于所述组件的第二数据源;
第一导入模块43,用于获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
可选地,所述第二确定模包括:
转换单元,用于在所述代码模板为基于template标签得到的模板的情况下,将所述代码模板转换成json格式;
确定单元,用于确定json格式的代码模板中的待配置参数。
可选地,所述生成请求包括所述前端页面代码的类型;
所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
可选地,所述前端页面代码的类型包括uni-app和element-ui。
可选地,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
所述代码生成装置还包括:
第三确定模块,用于从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码,并将所述目标模板子代码组合成所述代码模板。
可选地,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成装置还包括:
建立模块,用于根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
第二导入模块,用于将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
图5是本发明一示例实施例示出的一种电子设备的结构示意图,示出了适于用来实现本发明任一实施例的示例性电子设备50的框图。图5显示的电子设备50仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备50可以以通用计算设备的形式表现,例如其可以为服务器设备。电子设备50的组件可以包括但不限于:上述至少一个处理器51、上述至少一个存储器52、连接不同系统组件(包括存储器52和处理器51)的总线53。
总线53包括数据总线、地址总线和控制总线。
存储器52可以包括易失性存储器,例如随机存取存储器(RAM)521和/或高速缓存存储器522,还可以进一步包括只读存储器(ROM)523。
存储器52还可以包括具有一组(至少一个)程序模块524的程序工具525(或实用工具),这样的程序模块524包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
处理器51通过运行存储在存储器52中的计算机程序,从而执行各种功能应用以及数据处理,例如上述任一实施例所提供的方法。
电子设备50也可以与一个或多个外部设备54(例如键盘、指向设备等)通信。这种通信可以通过输入/输出(I/O)接口55进行。并且,模型生成的电子设备50还可以通过网络适配器56与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器56通过总线53与模型生成的电子设备50的其它模块通信。应当明白,尽管图中未示出,可以结合模型生成的电子设备50使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理器、外部磁盘驱动阵列、RAID(磁盘阵列)系统、磁带驱动器以及数据备份存储系统等。
应当注意,尽管在上文详细描述中提及了电子设备的若干单元/模块或子单元/模块,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多单元/模块的特征和功能可以在一个单元/模块中具体化。反之,上文描述的一个单元/模块的特征和功能可以进一步划分为由多个单元/模块来具体化。
本实施例提供了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述任意实施例提供的方法的步骤。
其中,可读存储介质可以采用的更具体可以包括但不限于:便携式盘、硬盘、随机存取存储器、只读存储器、可擦拭可编程只读存储器、光存储器件、磁存储器件或上述的任意合适的组合。
在可能的实施方式中,本发明还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行实现上述任意实施例提供的方法中的步骤。
其中,可以以一种或多种程序设计语言的任意组合来编写用于执行本发明的程序代码,所述程序代码可以完全地在用户设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户设备上部分在远程设备上执行或完全在远程设备上执行。
虽然以上描述了本发明的具体实施方式,但是本领域的技术人员应当理解,这仅是举例说明,本发明的保护范围是由所附权利要求书限定的。本领域的技术人员在不背离本发明的原理和实质的前提下,可以对这些实施方式做出多种变更或修改,但这些变更和修改均落入本发明的保护范围。
Claims (12)
1.一种代码生成方法,其特征在于,应用于电子设备,所述代码生成方法包括:
响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性动态绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件动态绑定至对应于所述组件的第二数据源;
获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
2.根据权利要求1所述的代码生成方法,其特征在于,确定所述代码模板中的待配置参数,包括:
若所述代码模板为基于template标签得到的模板,则将所述代码模板转换成json格式;
确定json格式的代码模板中的待配置参数。
3.根据权利要求1所述的代码生成方法,其特征在于,所述生成请求包括所述前端页面代码的类型;
所述第一数据源和所述第二数据源与所述前端页面代码的类型相关联。
4.根据权利要求1所述的代码生成方法,其特征在于,所述前端页面代码的类型包括uni-app和element-ui。
5.根据权利要求1所述的代码生成方法,其特征在于,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
所述代码生成方法还包括:
从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码;
将所述目标模板子代码组合成所述代码模板。
6.根据权利要求1所述的代码生成方法,其特征在于,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成方法还包括:
根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
7.一种代码生成装置,其特征在于,应用于电子设备,所述代码生成装置包括:
第一确定模块,用于响应于针对前端页面代码的生成请求,确定对应于生成请求的代码模板;
第二确定模块,用于确定所述代码模板中的待配置参数,所述待配置参数包括以下至少之一:前端页面包含的组件的组件名称、对应于所述组件名称的属性和对应于所述组件名称的事件;其中,所述属性的取值的数据类型是数组且所述属性用于绑定至对应于所述组件的第一数据源,所述事件的数据类型是数组且所述事件用于绑定至对应于所述组件的第二数据源;
第一导入模块,用于获取各个待配置参数的取值,并将所述取值导入所述代码模板,以生成所述前端页面代码。
8.根据权利要求7所述的代码生成装置,其特征在于,所述第二确定模包括:
转换单元,用于在所述代码模板为基于template标签得到的模板的情况下,将所述代码模板转换成json格式;
确定单元,用于确定json格式的代码模板中的待配置参数。
9.根据权利要求7所述的代码生成装置,其特征在于,所述生成请求包含配置需求信息;所述电子设备存储有用于实现不同功能的模板子代码;
所述代码生成装置还包括:
第三确定模块,用于从所述电子设备存储的模板子代码,确定与所述配置需求信息相匹配的目标模板子代码,并将所述目标模板子代码组合成所述代码模板。
10.根据权利要求7所述的代码生成装置,其特征在于,所述待配置参数包括组件与数据表的表结构的对应关系;所述数据表用于记录对应于所述组件的业务数据;所述代码生成装置还包括:
建立模块,用于根据所述对应关系,建立所述组件与所述数据表的字段的关联关系;
第二导入模块,用于将所述关联关系导入代码模板,以生成对应于所述前端页面的后端代码。
11.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的代码生成方法。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的代码生成方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111080482.2A CN113835693B (zh) | 2021-09-15 | 2021-09-15 | 代码生成方法、装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111080482.2A CN113835693B (zh) | 2021-09-15 | 2021-09-15 | 代码生成方法、装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113835693A true CN113835693A (zh) | 2021-12-24 |
CN113835693B CN113835693B (zh) | 2024-03-08 |
Family
ID=78959476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111080482.2A Active CN113835693B (zh) | 2021-09-15 | 2021-09-15 | 代码生成方法、装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113835693B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115658046A (zh) * | 2022-12-13 | 2023-01-31 | 中国人民解放军国防科技大学 | 基于Web技术开发模块化UI交互组件的方法、装置 |
CN117149166A (zh) * | 2023-10-30 | 2023-12-01 | 江苏德高物联技术有限公司 | 电磁水表数据对接代码生成方法及装置 |
TWI828459B (zh) * | 2022-11-15 | 2024-01-01 | 大陸商南京鼎華智能系統有限公司 | 用於產生資料模型的系統及方法 |
CN117608560A (zh) * | 2024-01-24 | 2024-02-27 | 卡奥斯创智物联科技有限公司 | Lvgl页面显示代码生成方法、装置、设备及介质 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000022517A1 (en) * | 1998-10-13 | 2000-04-20 | Codagen Technologies Corp. | Component-based source code generator |
US6237135B1 (en) * | 1998-06-18 | 2001-05-22 | Borland Software Corporation | Development system with visual design tools for creating and maintaining Java Beans components |
WO2006043012A1 (en) * | 2004-10-22 | 2006-04-27 | New Technology/Enterprise Limited | Data processing system and method |
US20120266131A1 (en) * | 2011-04-12 | 2012-10-18 | Hitachi, Ltd. | Automatic program generation device, method, and computer program |
CN109117131A (zh) * | 2018-08-16 | 2019-01-01 | 杭州云纪网络科技有限公司 | 代码生成方法及装置、存储介质及电子终端 |
CN110007917A (zh) * | 2019-03-08 | 2019-07-12 | 国电南瑞科技股份有限公司 | 一种基于浏览器的可视化页面生成和浏览方法 |
CN110244942A (zh) * | 2019-06-19 | 2019-09-17 | 优信拍(北京)信息科技有限公司 | 一种页面生成方法、装置及系统 |
CN110941423A (zh) * | 2019-11-22 | 2020-03-31 | 深圳市航通智能技术有限公司 | 一种基于Java的快速生成代码方法 |
CN111522552A (zh) * | 2020-07-06 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 子应用生成方法、装置、计算机设备和存储介质 |
CN111796820A (zh) * | 2020-05-21 | 2020-10-20 | 苏宁云计算有限公司 | 基于集成化组件构建前端页面的方法、装置及电子设备 |
CN111813377A (zh) * | 2020-06-15 | 2020-10-23 | 新奥数能科技有限公司 | 一种自动生成应用程序的方法及装置 |
CN112181399A (zh) * | 2019-07-03 | 2021-01-05 | 营利度富信息系统(上海)有限公司 | 一种基于数据解析构建模型生成前端代码的方法 |
CN112732239A (zh) * | 2020-12-29 | 2021-04-30 | 望海康信(北京)科技股份公司 | 页面动态生成方法、系统及相应设备和存储介质 |
-
2021
- 2021-09-15 CN CN202111080482.2A patent/CN113835693B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6237135B1 (en) * | 1998-06-18 | 2001-05-22 | Borland Software Corporation | Development system with visual design tools for creating and maintaining Java Beans components |
WO2000022517A1 (en) * | 1998-10-13 | 2000-04-20 | Codagen Technologies Corp. | Component-based source code generator |
WO2006043012A1 (en) * | 2004-10-22 | 2006-04-27 | New Technology/Enterprise Limited | Data processing system and method |
US20120266131A1 (en) * | 2011-04-12 | 2012-10-18 | Hitachi, Ltd. | Automatic program generation device, method, and computer program |
CN109117131A (zh) * | 2018-08-16 | 2019-01-01 | 杭州云纪网络科技有限公司 | 代码生成方法及装置、存储介质及电子终端 |
CN110007917A (zh) * | 2019-03-08 | 2019-07-12 | 国电南瑞科技股份有限公司 | 一种基于浏览器的可视化页面生成和浏览方法 |
CN110244942A (zh) * | 2019-06-19 | 2019-09-17 | 优信拍(北京)信息科技有限公司 | 一种页面生成方法、装置及系统 |
CN112181399A (zh) * | 2019-07-03 | 2021-01-05 | 营利度富信息系统(上海)有限公司 | 一种基于数据解析构建模型生成前端代码的方法 |
CN110941423A (zh) * | 2019-11-22 | 2020-03-31 | 深圳市航通智能技术有限公司 | 一种基于Java的快速生成代码方法 |
CN111796820A (zh) * | 2020-05-21 | 2020-10-20 | 苏宁云计算有限公司 | 基于集成化组件构建前端页面的方法、装置及电子设备 |
CN111813377A (zh) * | 2020-06-15 | 2020-10-23 | 新奥数能科技有限公司 | 一种自动生成应用程序的方法及装置 |
CN111522552A (zh) * | 2020-07-06 | 2020-08-11 | 腾讯科技(深圳)有限公司 | 子应用生成方法、装置、计算机设备和存储介质 |
CN112732239A (zh) * | 2020-12-29 | 2021-04-30 | 望海康信(北京)科技股份公司 | 页面动态生成方法、系统及相应设备和存储介质 |
Non-Patent Citations (4)
Title |
---|
"支持复杂界面构成的界面设计模式研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》, pages 138 - 328 * |
CERI S等: "Web Modeling Language (WebML): a modeling language for designing Web sites", 《COMPUTER NETWORKS》, pages 137 - 157 * |
DHZP5170: "小程序开发-6-组件数据、事件与属性", pages 1 - 2, Retrieved from the Internet <URL:https://blog.csdn.net/dhzp5170/article/details/101897688> * |
戴鹏: "基于动态数据源的代码生成系统的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, pages 138 - 458 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI828459B (zh) * | 2022-11-15 | 2024-01-01 | 大陸商南京鼎華智能系統有限公司 | 用於產生資料模型的系統及方法 |
CN115658046A (zh) * | 2022-12-13 | 2023-01-31 | 中国人民解放军国防科技大学 | 基于Web技术开发模块化UI交互组件的方法、装置 |
CN115658046B (zh) * | 2022-12-13 | 2023-03-21 | 中国人民解放军国防科技大学 | 基于Web技术开发模块化UI交互组件的方法、装置 |
CN117149166A (zh) * | 2023-10-30 | 2023-12-01 | 江苏德高物联技术有限公司 | 电磁水表数据对接代码生成方法及装置 |
CN117149166B (zh) * | 2023-10-30 | 2023-12-29 | 江苏德高物联技术有限公司 | 电磁水表数据对接代码生成方法及装置 |
CN117608560A (zh) * | 2024-01-24 | 2024-02-27 | 卡奥斯创智物联科技有限公司 | Lvgl页面显示代码生成方法、装置、设备及介质 |
CN117608560B (zh) * | 2024-01-24 | 2024-04-12 | 卡奥斯创智物联科技有限公司 | Lvgl页面显示代码生成方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113835693B (zh) | 2024-03-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113835693B (zh) | 代码生成方法、装置、电子设备、存储介质 | |
CN111241454B (zh) | 一种生成网页代码的方法、系统和装置 | |
CN1298151C (zh) | 用于获取网格中的状态信息的方法和设备 | |
US8539514B2 (en) | Workflow integration and portal systems and methods | |
CN115617327A (zh) | 低代码页面搭建系统、方法及计算机可读存储介质 | |
CN102929646B (zh) | 应用程序生成方法及装置 | |
US8914482B2 (en) | Translation of technology-agnostic management commands into multiple management protocols | |
CN108153919A (zh) | Dbf数据导出平台及其导出方法 | |
CN1992725A (zh) | 用于web服务面向消息的构建的方法与系统 | |
CN114048415A (zh) | 表单生成方法及装置、电子设备和计算机可读存储介质 | |
KR101552914B1 (ko) | 웹 서버 어플리케이션 프레임워크 장치와 프레임워크를 이용한 웹 어플리케이션 처리 방법 및 이를 구현할 수 있는 컴퓨터로 읽을 수 있는 기록 매체 | |
CN113568614A (zh) | 任务发布方法、电子设备及存储介质 | |
CN110633162B (zh) | 远程调用实现方法、装置、计算机设备及存储介质 | |
CN116400914A (zh) | 一种基于数据模型快速构建web应用的方法 | |
CN114365467B (zh) | 用于确定3gpp flus接收能力的方法、装置和计算机可读介质 | |
CN113641641A (zh) | 文件存储服务的切换方法、切换系统、设备及存储介质 | |
CN113791819A (zh) | 接口文档生成方法和装置、存储介质、电子设备 | |
CN113542323A (zh) | 业务处理方法、装置、设备及计算机可读存储介质 | |
CN114553688B (zh) | 云计算部署方法、装置、设备及计算机可读存储介质 | |
CN113050979B (zh) | 安装操作系统的装机配置方法及装置,安装方法及装置 | |
US8620856B2 (en) | Method and system for providing a data exchange service provider interface | |
CN114489588A (zh) | 时序图生成方法、装置、电子设备和存储介质 | |
CN114721955A (zh) | 任务内容审核方法、系统、电子设备及存储介质 | |
CN115712416A (zh) | 一种代码生成方法、装置及设备 | |
CN118151905A (zh) | 工具使用实例的生成方法及装置、存储介质、电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |