CN113515278A - 低代码模型处理方法、系统、电子设备及存储介质 - Google Patents

低代码模型处理方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN113515278A
CN113515278A CN202110664998.5A CN202110664998A CN113515278A CN 113515278 A CN113515278 A CN 113515278A CN 202110664998 A CN202110664998 A CN 202110664998A CN 113515278 A CN113515278 A CN 113515278A
Authority
CN
China
Prior art keywords
code
low
model
metadata
initial
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.)
Pending
Application number
CN202110664998.5A
Other languages
English (en)
Inventor
夏植超
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Aozhe Network Technology Co ltd
Original Assignee
Shenzhen Aozhe Network Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Aozhe Network Technology Co ltd filed Critical Shenzhen Aozhe Network Technology Co ltd
Priority to CN202110664998.5A priority Critical patent/CN113515278A/zh
Publication of CN113515278A publication Critical patent/CN113515278A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/35Creation or generation of source code model driven
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/447Target code generation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请公开了一种低代码模型处理方法、系统、电子设备及存储介质低代码模型处理,涉及元数据技术领域。通过在程序开发环境下获取低代码平台中的低代码预设模型,根据低代码预设模型的初始元数据生成初始实体代码,在程序开发环境下修改初始实体代码生成目标实体代码,根据程序开发环境下的目标实体代码更新低代码平台中存储的低代码预设模型的初始元数据以生成低代码目标模型,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。

Description

低代码模型处理方法、系统、电子设备及存储介质
技术领域
本申请涉及元数据技术领域,尤其是涉及一种低代码模型处理方法、系统、电子设备及存储介质。
背景技术
随着企业数字化、信息化市场规模的扩大,在“业务在线”需求与资本市场的关注双重作用下,低代码市场快速增长。基于低代码平台方式开发的信息化系统,特别是前端业务系统,越来越多。低代码系统由于其良好的模型抽象能力,前端能够获得更加底层、更加丰富的元数据信息;在一套前后端统一的通信协议基础之上,相较于传统web系统开发速度更快、成本更低、二次开发难度更简单。
目前低代码技术领域包括解析型低代码领域和生成型低代码领域,在解析型低代码领域中,系统无法根据用户设计的低代码模型生成相应的实体代码;而在生成型低代码领域中,系统可以根据低代码模型生成相应的实体代码,但是生成的实体代码无法进行修改,从而无法直接通过修改实体代码来改变用户设计的低代码模型。
发明内容
本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种
本申请还提出一种具有上述低代码模型处理方法的低代码模型处理系统。
本申请还提出一种具有上述低代码模型处理方法的电子设备。
本申请还提出一种具有上述低代码模型处理方法的计算机可读存储介质。
根据本申请的第一方面实施例的低代码模型处理方法,包括:在程序开发环境下,获取低代码平台中低代码预设模型,所述低代码预设模型包括初始元数据;根据所述低代码预设模型的初始元数据生成初始实体代码;在所述程序开发环境下修改所述初始实体代码生成目标实体代码;根据所述程序开发环境下的所述目标实体代码更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
根据本申请实施例的低代码模型处理方法,至少具有如下有益效果:通过在程序开发环境下获取低代码平台中的低代码预设模型,根据低代码预设模型的初始元数据生成初始实体代码,在程序开发环境下修改初始实体代码生成目标实体代码,根据程序开发环境下的目标实体代码更新低代码平台中存储的低代码预设模型的初始元数据以生成低代码目标模型,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
根据本申请的一些实施例,所述根据所述低代码预设模型的初始元数据生成初始实体代码,包括:获取所述低代码预设模型的初始元数据的元数据信息;根据所述元数据信息生成初始数据结构;根据所述初始数据结构和预设的模板引擎生成所述初始实体代码。
根据本申请的一些实施例,还包括:将生成的所述初始实体代码和所述目标实体代码保存在预设代码目录中。
根据本申请的一些实施例,根据所述程序开发环境下的所述目标实体代码在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型,包括:在所述程序开发环境下获取所述目标实体代码的模型代码类;解析所述模型代码类生成修改后的目标元数据;根据修改后的所述目标元数据更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型。
根据本申请的一些实施例,所述在所述程序开发环境下获取所述目标实体代码的模型代码类,包括:在所述程序开发环境下,获取预设的类加载器和类名称,获取所述预设代码目录中的所述目标实体代码;根据所述类加载器和类名称获取所述目标实体代码中的模型代码类。
根据本申请的一些实施例,所述解析所述模型代码类生成修改后的目标元数据,包括:解析所述模型代码类获取元数据信息,所述元数据信息包括元数据注解信息和元数据字段信息;根据所述元数据注解信息和所述元数据字段信息生成所述目标元数据。
根据本申请的一些实施例,所述根据修改后的所述目标元数据在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型,包括:获取所述目标元数据的数据参数;根据所述数据参数调用所述低代码平台的元数据服务接口;调用所述元数据服务接口将所述目标元数据发更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型。
根据本申请的第二方面实施例的低代码模型处理系统,包括:模型获取模块,所述模型获取模块用于在程序开发环境下,获取低代码平台中低代码预设模型;代码生成模块,所述代码生成模块用于根据所述低代码预设模型的初始元数据生成初始实体代码;代码编写模块,所述代码编写模块用于在所述程序开发环境下修改所述初始实体代码生成目标实体代码;模型同步模块,所述模型同步模块用于根据所述程序开发环境下的所述目标实体代码在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
根据本申请实施例的低代码模型处理系统,至少具有如下有益效果:通过模型获取模块在程序开发环境下获取低代码平台中的低代码预设模型,代码生成模块根据低代码预设模型的初始元数据生成初始实体代码,代码编写模块在程序开发环境下修改初始实体代码生成目标实体代码,模型同步模块根据程序开发环境下的目标实体代码更新低代码平台中存储的低代码预设模型的初始元数据以生成低代码目标模型,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
根据本申请的第三方面实施例的电子设备,包括:至少一个处理器,以及,与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如第一方面所述的低代码模型处理方法。
根据本申请的电子设备,至少具有如下有益效果:通过执行第一方面实施例中提到的低代码模型处理方法,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
根据本申请的第四方面实施例的计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面所述的低代码模型处理方法。
根据本申请的计算机可读存储介质,至少具有如下有益效果:通过执行第一方面实施例中提到的低代码模型处理方法,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
图1为本申请实施例中用于执行低代码模型处理方法的一具体系统架构图;
图2为本申请实施例中低代码模型处理方法的一具体流程示意图;
图3为本申请实施例中低代码模型处理方法中步骤S200的一具体流程示意图;
图4为本申请实施例中低代码模型处理方法中步骤S400的一具体流程示意图;
图5为本申请实施例中低代码模型处理方法中步骤S410的一具体流程示意图;
图6为本申请实施例中低代码模型处理方法中步骤S420的一具体流程示意图;
图7为本申请实施例中低代码模型处理方法中步骤S430的一具体流程示意图;
图8为本申请实施例中低代码模型处理方法的一具体应用实例图;
图9为本申请实施例中低代码模型处理系统的一具体模块示意图。
附图标记:
低代码平台100、开发平台200;模型获取模块310、代码生成模块320、代码编写模块330、模型同步模块340。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。
需要说明的是,如无特殊说明,在实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。此外,除非另有定义,本文所使用的所有的技术和科学术语与本技术领域的技术人员通常理解的含义相同。本文说明书中所使用的术语只是为了描述具体的实施例,而不是为了限制本申请。本文所使用的术语“和/或”包括一个或多个相关的所列项目的任意的组合。
针对本文说明书中出现的技术术语或技术词汇进行解释说明:
Springcloud:一系列框架的有序集合,利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,可以用Spring Boot的开发风格做到一键启动和部署。
Nacos:支持基于DNS(Domain Name System,域名系统)和基于RPC(RemoteProcedure Call,远程过程调用)的服务发现,可作为springcloud的注册中心、动态配置服务,可做配置中心、动态DNS服务,Nacos提供了一组简单易用的特性集,帮助实现动态服务发现、服务配置管理、服务及流量管理。Nacos注册中心分为server(服务器)与client(客户端),server采用Java编写,为client提供注册发现服务与配置服务。而client可以用多语言实现,client与微服务嵌套在一起,nacos提供sdk(Software Development Kit,软件开发工具包)和openApi(Open Application Programming Interface,开放应用编程接口),如果没有sdk也可以根据openApi手动写服务注册与发现和配置拉取的逻辑。
FreeMarker模板引擎:一种基于模板和需要改变的数据,并用来生成输出文本的通用工具,输出的文本包括但不限于HTML网页,电子邮件,配置文件,源代码等。FreeMarker模板引擎作为一个Java类库并且可嵌入开发平台中的一种组件。
随着企业数字化、信息化市场规模的扩大,在“业务在线”需求与资本市场的关注双重作用下,低代码市场快速增长。基于低代码平台方式开发的信息化系统,特别是前端业务系统,越来越多。低代码系统由于其良好的模型抽象能力,前端能够获得更加底层、更加丰富的元数据信息;在一套前后端统一的通信协议基础之上,相较于传统web系统开发速度更快、成本更低、二次开发难度更简单。
目前低代码技术领域包括解析型低代码领域和生成型低代码领域,在解析型低代码领域中,系统无法根据用户设计的低代码模型生成相应的实体代码;而在生成型低代码领域中,系统可以根据低代码模型生成相应的实体代码,但是生成的实体代码无法进行修改,从而无法直接通过修改实体代码来改变用户设计的低代码模型。
基于此,本申请实施例提供了一种低代码模型处理方法、系统、电子设备及存储介质,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
需要说明的是,本申请实施例中所涉及的系统架构如图1所示,低代码设计系统包括低代码平台100和开发平台200,并且,业务人员可以根据实际的业务需求在低代码平台100上进行低代码模型的设计,开发人员也可以在开发平台200上对低代码平台100中设计的模型进行代码修改等;具体地说,低代码平台100提供给业务人员以低代码的形式进行模型设计的能力;而在开发平台200上,开发人员能够通过参数配置等方式使得开发平台200能够连接低代码平台100,能够与低代码平台100进行模型元数据的交互。
在实际应用中,该系统架构为基于springcloud+nacos的微服务架构,开发人员可以在微服务架构提供给的二次开发模板工程中的配置文件进行配置连接,配置需要连接的nacos注册中心地址,使得二次开发模板工程在启动时即可连接到低代码平台100的模型元数据服务。
需要说明的是,本申请实施例中所提到的低代码平台100为基于低代码所构建的业务低代码平台100该平台提供给业务人员以低代码或者零代码行驶进行的模型设计的能力;开发平台200则为常用的开发工具IDE(Integrated Development Environment,集成开发环境),包括代码编辑器、编译器、调试器和图形用户界面等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发软件服务套,开发人员能够在IDE上进行代码编辑等操作。
第一方面,本申请实施例提供了一种低代码模型处理方法。
在一些实施例中,参照图2,示出了本申请实施例中低代码模型处理方法的流程示意图。其具体包括步骤:
S100,在程序开发环境下,获取低代码平台中低代码预设模型;
S200,根据低代码预设模型的初始元数据生成初始实体代码;
S300,修改初始实体代码生成目标实体代码;
S400,根据程序开发环境下的目标实体代码更新低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
在步骤S100中,当开发平台200连接到低代码平台100后,开发平台200即提供了本申请实施例中所提到的程序开发环境,开发平台200能够在提供的程序开发环境下通过与低代码平台100中的元数据服务的配置连接获取到对应的低代码预设模型,该低代码预设模型包括初始元数据,即本申请实施例中所需要的元数据,通过该模型的初始元数据执行后续步骤中的实体代码的修改和同步。其中低代码预设模型是指业务人员在低代码平台100上以低代码的形式生成的低代码模型;初始元数据则是低代码模型对应的元数据,表征低代码模型的数据形式。具体地说,低代码平台100以应用为单位进行模型划分,每个应用下存在对应的低代码预设模型,当开发平台200获取到低代码平台100中的低代码预设模型后,确定低代码预设模型中是否存在模型元数据即初始元数据,如果存在初始元数据,则开发平台200通过配置连接获取低代码平台100中的低代码预设模型中对应的初始元数据。在步骤S200中,根据获取到的初始元数据生成初始实体代码,其中初始实体代码是指在开发平台200中的二次模板工程中指定的代码目录中生成低代码预设模型对应的实体代码,即将可视化的模型在开发平台200上以代码的形式进行展示,便于开发人员在开发平台200上进行实体代码的修改。在实际应用中,通过使用FreeMarker模板引擎生成对应的实体代码,即通过模板引擎和初始元数据输出对应的初始实体代码,具体原理为元数据替换模板引擎中的部分字符,输出替换后的初始实体代码。
在一些实施例中,参考图3,本申请实施例中步骤S200具体还包括步骤:
S210,获取低代码预设模型的初始元数据的元数据信息;
S220,根据元数据信息生成初始数据结构;
S230,根据初始数据结构和预设的模板引擎生成初始实体代码。
在步骤S210中,初始元数据中包含有用于描述低代码预设模型的元数据信息,该元数据信息为用于描述低代码预设模型的关键信息,例如初始实体代码存放的代码包名、模型所属的应用编码、模型的分组编码、模型的模块编码、模型的领域编码、模型编码、模型的字段列表、模型的字段编码名称、字段数据类型等;元数据信息包括多种关键信息,通过多种关键信息从多方面对低代码预设模型进行描述,开发平台200能够从初始元数据中提取元数据信息,以对低代码预设模型进行模型确定。
在步骤S220中,对从初始元数据中提取到的元数据信息进行转换处理,转换成特定的数据结构即本申请实施例中提到的初始数据结构,该初始数据结构用于后续进行实体代码的生成。在实际应用中,将元数据信息中的多种关键信息以特定的数据结构进行转换,以key-value的形式进行转换,具体的元数据信息的内容本申请实施例中不做具体描述。
在步骤S230中,通过转换后的特定的数据结构即初始数据结构,结合预设好的模板引擎即FreeMarker模板引擎进行初始实体代码的输出。具体地说结合FreeMarker模板引擎驱动预设好的生成模板和元数据的初始数据结构进行实体代码的输出,即通过初始数据结构中的数据信息替换模板中的特定字符,输出的实体代码则为替换后的输出结果。
在步骤S300中,生成的初始实体代码可在开发平台200上进行查阅或者修改等,即开发人员可以在开发平台200中的二次模板工程中对初始实体代码进行修改,例如修改初始预设模型中包含的详细地址、修改初始预设模型中的部分参数信息等,具体的修改方式可以由开发人员根据实际需求在开发平台200上进行修改,从而得到修改后的目标实习代码。
在实际应用中,当开发人员在开发平台200上对初始实体代码进行修改时,可以在编码时提供代码提示的功能,例如在修改模型的详细地址时,开发平台200在输入涉及到的代码例如“seta”后,开发平台200会自动提示存在“setAddressDetail”方法,直接使用该方法进行模型的详细地址的修改;也可以在编码时无需提供代码提示功能,开发人员需在操作时通过对应的模型字段的编码进行设置。代码提示功能能够根据开发人员的实际需求进行切换使用,提高开发人员的修改效率和修改准确率。
在一些实施例中,本申请实施例中还包括将生成的初始实体代码和目标实体代码保存在预设代码目录中,即生成的初始实体代码和目标实体代码会预先保存在二次模板工程中预设好的代码目录,以便后续在进行二次开发时能够使用生成的初始实体代码和目标实体代码,并且可以通过扫描预设代码目录中的实体代码,便于将目标实体代码返回修改低代码平台100中的低代码预设模型。
在步骤S400中,根据修改后的目标实体代码对低代码平台100中存储的低代码预设平台的初始元数据进行更新以在低代码平台100中生成低代码目标模型,具体地说,调用开发平台200中的代码同步程序,通过与低代码平台100的配置连接,根据目标初始代码在低代码平台100上进行模型更新,重新组装生成新的低代码模型即本申请实施例中提到的低代码目标模型。在实际应用中,可以在低代码预设模型的基础上进行更新重组生成低代码目标模型进行覆盖,也可以基于低代码预设模型的数据直接生成新的低代码目标模型,与低代码预设模型同时存在,具体生成方式可以根据实际需求进行调整,本申请实施例中不做具体限定。
在一些实施例中,参考图4,本申请实施例中步骤S400具体还包括步骤:
S410,在程序开发环境下获取目标实体代码的模型代码类;
S420,解析模型代码类生成修改后的目标元数据;
S430,根据修改后的目标元数据更新低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
在步骤S410中,在开发平台200所提供的程序开发环境下,二次模板工程作为Java文件被运行时,需要通过编译器编译为class文件,每一个class文件都有各自的存放路径,通过扫描对应的存放路径即先前提到的预设代码目录,通过扫描预设代码目录下的目标实体代码,得到目标实体代码中的模型代码类。
在一些实施例中,参考图5,步骤S410具体还包括步骤:
S411,在程序开发环境下,获取预设的类加载器和类名称,获取预设代码目录中的目标实体代码;
S412,根据类加载器和类名称获取目标实体代码中的模型代码类。
在步骤S411至步骤S412中,开发平台200在提供的程序开发环境下获取预设的类加载器和类名称、预设代码目录中的目标实体代码,根据类加载器和类名称扫描预设代码目录中的目标实体代码的模型代码类。具体地说,即通过预设好的资源加载器和需要加载的类名称加载指定的代码目录中的实体代码的类,通过类名称确定为目标实体代码的类。
在步骤S420中,通过Java类的反射机制对模型代码类进行解析,以获取到修改后的目标元数据,其中修改后的目标元数据是指开发人员在开发平台200上对初始元数据对应的初始实体代码进行修改后所得到的目标实体代码对应的元数据,该元数据里包括有具体修改的元数据内容等。
在一些实施例中,参考图6,步骤S420具体还包括步骤:
S421,解析模型代码类获取元数据信息,元数据信息包括元数据注解信息和元数据字段信息;
S422,根据元数据注解信息和元数据字段信息生成目标元数据。
在步骤S421和步骤S422中,基于Java类的反射机制,开发平台200可以解析模型代码类获取对应的元数据信息,其中元数据信息包括元数据注解信息和元数据字段信息。其中元数据注解信息是指模型代码上的Model注解,元数据字段信息是指模型类字段属性上的Property注解。其中Model注解即元数据注解信息包括但不限于模型编码modelCode、模型描述description、模型主键编码信息primaryKey;Property注解包括但不限于模型字段描述description、模型字段数据类型propertyType,另外可以基于反射机制将模型字段名称作为目标元数据的模型字段编码进行使用,将解析得到的元数据注解信息和元数据字段信息进行组装成目标元数据,其中目标元数据则为用于后续在低代码平台100上组装生成低代码目标模型所要用到的元数据,即组装生成的目标元数据包括有多种描述低代码目标模型的关键信息,当低代码平台100接收到该目标元数据后,可以根据关键信息组装生成本申请实施例中所提到的低代码目标模型。
在步骤S430中,开发平台200通过与低代码平台100建立的连接,将修改后所得到的目标元数据发送到低代码平台100处,在低代码平台100处进行低代码目标模型的组装,具体的组装方式为使用低代码平台100中的元数据服务,基于元数据进行模型组装,以生成低代码目标模型。
在一些实施例中,参考图7,步骤S430具体还包括步骤:
S431,获取目标元数据的数据参数;
S432,根据数据参数调用低代码平台的元数据服务接口;
S433,调用元数据服务接口将目标元数据发更新低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
在步骤S431至步骤S433中,开发平台200通过代码的形式获取目标元数据中的数据参数,其中数据参数为目标元数据中相对于初始元数据的修改后的参数信息,通过获取到的数据参数确定元数据相较于初始元数据发生了变化,此时通过调用低代码平台100的元数据服务接口,将目标元数据发送到低代码平台100中生成低代码目标模型。具体地说,基于底层http接口如FeignClient远程调用低代码平台100中的元数据服务,通过元数据服务将目标元数据发送至低代码平台100中,对低代码平台中存储的低代码预设模型的初始元数据进行更新即将初始元数据变更为目标元数据,通过目标元数据在低代码平台100上重新组装生成新的低代码目标模型。
在可能实施的应用实例中,参考图8,业务人员在低代码平台100上设计初始的低代码预设模型,开发人员则在开发平台200上进行配置设计以使得开发平台200能够与低代码平台100建立连接。开发平台200在与低代码平台100建立连接后,能够调用启动开发平台200中的代码正向同步程序,该代码正向同步程序能够获取低代码平台100中的低代码预设模型,并且提取低代码预设模型对应的初始元数据,通过正向同步程序和初始元数据生成模型实体代码即初始实体代码,开发人员能够在开发平台200上进行自定义代码,通过自定义代码实现对模型实体代码的代码提示功能。开发人员在获取到的模型实体代码后,能够对模型实体代码即初始实体代码进行代码修改,得到修改后的模型实体代码即目标初始代码,此时启动开发平台200中的代码反向同步程序,通过代码反向程序扫描目标初始代码以获取修改后的目标元数据,并且代码反向程序还会调用低代码平台100的元数据服务,根据修改后的目标元数据对低代码平台中存储的低代码预设模型的初始元数据进行更新即将初始元数据变更为目标元数据,通过目标元数据在低代码平台100上重新组装生成新的低代码目标模型。
需要说明的是,本申请实施例能够在解析型低代码领域内,保留解析型低代码领域技术的简洁和快速响应变化的特点,同时能够提供在二次开发时的代码提示功能,并且保证了实体代码和模型之间的双向同步的特点,避免了先前需要修改代码时,需要先修改元数据再同步到实体代码里的问题,从而提升了模型元数据和实体代码之间的同步操作的便利性。
在本申请实施例中,通过在程序开发环境下获取低代码平台100中的低代码预设模型,根据低代码预设模型的初始元数据生成初始实体代码,在程序开发环境下修改初始实体代码生成目标实体代码,根据程序开发环境下的目标实体代码更新低代码平台100中存储的低代码预设模型的初始元数据以生成低代码目标模型,能够对低代码平台100上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台100上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
第二方面,本申请实施例提供了一种用于执行的第一方面实施例中所提到的低代码模型处理方法的低代码模型处理系统。
在一些实施例中,参照图9,示出了本申请实施例中低代码模型处理低代码模型处理系统的模块示意图。其具体包括:模型获取模块310、代码生成模块320、代码编写模块330和模型同步模块340。
其中,模型获取模块310用于在程序开发环境下,获取低代码平台中低代码预设模型;
代码生成模块320用于根据低代码预设模型的初始元数据生成初始实体代码;
代码编写模块330用于修改初始实体代码生成目标实体代码;
模型同步模块340用于根据程序开发环境下的目标实体代码在更新低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
需要说明的是,本申请实施例中所提到的模型获取模块310、代码生成模块320、代码编写模块330和模型同步模块340已在第一方面实施例的低代码模型处理方法中详细描述,故不再赘述。
在本申请实施例中,通过模型获取模块310在程序开发环境下获取低代码平台中的低代码预设模型,代码生成模块320根据低代码预设模型的初始元数据生成初始实体代码,代码编写模块330在程序开发环境下修改初始实体代码生成目标实体代码,模型同步模块340根据程序开发环境下的目标实体代码更新低代码平台中存储的低代码预设模型的初始元数据以生成低代码目标模型,能够对低代码平台上生成的模型的实体代码进行修改,并且同步修改后的实体代码到低代码平台上生成新的低代码模型,方便快捷,提高低代码模型的修改效率。
第三方面,本申请实施例还提供了一种电子设备,包括:至少一个处理器,以及与所述至少一个处理器通信连接的存储器;
其中,所述处理器通过调用所述存储器中存储的计算机程序,用于执行第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本申请第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。处理器通过运行存储在存储器中的非暂态软件程序以及指令,从而实现上述第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。
存储器可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储执行上述第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
实现上述第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法所需的非暂态软件程序以及指令存储在存储器中,当被一个或者多个处理器执行时,执行上述第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。
第四方面,本申请实施例还提供了计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:执行第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法;
在一些实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,被第三方面实施例的电子设备中的一个处理器执行,可使得上述一个或多个处理器执行上述第一方面实施例中的数据压缩方法或第二方面实施例中的数据解压方法。
以上所描述的设备实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
在本说明书的描述中,参考术语“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。

Claims (10)

1.低代码模型处理方法,其特征在于,包括:
在程序开发环境下,获取低代码平台中低代码预设模型;
根据所述低代码预设模型的初始元数据生成初始实体代码;
修改所述初始实体代码生成目标实体代码;
根据所述程序开发环境下的所述目标实体代码更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
2.根据权利要求1所述的低代码模型处理方法,其特征在于,所述根据所述低代码预设模型的初始元数据生成初始实体代码,包括:
获取所述低代码预设模型的初始元数据的元数据信息;
根据所述元数据信息生成初始数据结构;
根据所述初始数据结构和预设的模板引擎生成所述初始实体代码。
3.根据权利要求2所述的低代码模型处理方法,其特征在于,还包括:
将生成的所述初始实体代码和所述目标实体代码保存在预设代码目录中。
4.根据权利要求3所述的低代码模型处理方法,其特征在于,根据所述程序开发环境下的所述目标实体代码在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型,包括:
在所述程序开发环境下获取所述目标实体代码的模型代码类;
解析所述模型代码类生成修改后的目标元数据;
根据修改后的所述目标元数据更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型。
5.根据权利要求4所述的低代码模型处理方法,其特征在于,所述在所述程序开发环境下获取所述目标实体代码的模型代码类,包括:
在所述程序开发环境下,获取预设的类加载器和类名称,获取所述预设代码目录中的所述目标实体代码;
根据所述类加载器和类名称获取所述目标实体代码中的模型代码类。
6.根据权利要求5所述的低代码模型处理方法,其特征在于,所述解析所述模型代码类生成修改后的目标元数据,包括:
解析所述模型代码类获取元数据信息,所述元数据信息包括元数据注解信息和元数据字段信息;
根据所述元数据注解信息和所述元数据字段信息生成所述目标元数据。
7.根据权利要求6所述的低代码模型处理方法,其特征在于,所述根据修改后的所述目标元数据在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型,包括:
获取所述目标元数据的数据参数;
根据所述数据参数调用所述低代码平台的元数据服务接口;
调用所述元数据服务接口将所述目标元数据发更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成所述低代码目标模型。
8.低代码模型处理系统,其特征在于,包括:
模型获取模块,所述模型获取模块用于在程序开发环境下,获取低代码平台中低代码预设模型;
代码生成模块,所述代码生成模块用于根据所述低代码预设模型的初始元数据生成初始实体代码;
代码编写模块,所述代码编写模块用于修改所述初始实体代码生成目标实体代码;
模型同步模块,所述模型同步模块用于根据所述程序开发环境下的所述目标实体代码在更新所述低代码平台中存储的低代码预设模型的初始元数据,以生成低代码目标模型。
9.电子设备,其特征在于,包括:
至少一个处理器,以及,
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行所述指令时实现如权利要求1至8任一项所述的低代码模型处理方法。
10.计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1至8任一项所述的低代码模型处理方法。
CN202110664998.5A 2021-06-16 2021-06-16 低代码模型处理方法、系统、电子设备及存储介质 Pending CN113515278A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110664998.5A CN113515278A (zh) 2021-06-16 2021-06-16 低代码模型处理方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110664998.5A CN113515278A (zh) 2021-06-16 2021-06-16 低代码模型处理方法、系统、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN113515278A true CN113515278A (zh) 2021-10-19

Family

ID=78065659

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110664998.5A Pending CN113515278A (zh) 2021-06-16 2021-06-16 低代码模型处理方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN113515278A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918664A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种数据处理方法以及装置
CN113918427A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种数据变更响应方法以及装置
CN113918198A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种模型-代码同步方法
CN114020323A (zh) * 2022-01-04 2022-02-08 阿里云计算有限公司 模型处理方法、代码获得方法、装置以及电子设备
CN115202732A (zh) * 2022-06-27 2022-10-18 深圳市互通创新科技有限公司 一种智能软件开发辅助系统及使用方法
CN117331548A (zh) * 2023-11-30 2024-01-02 厦门泛卓信息科技有限公司 一种基于智慧楼宇软件的低代码开发系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1831766A (zh) * 2005-03-10 2006-09-13 国际商业机器公司 用于管理计算机程序代码的开发对象的方法和系统
CN103235729A (zh) * 2013-04-18 2013-08-07 南京大学 一种基于代码变更的软件模型同步方法
WO2016085213A1 (ko) * 2014-11-27 2016-06-02 주식회사 엘지씨엔에스 컴퓨터 수행 가능한 모델 역공학 방법 및 장치
CN112596706A (zh) * 2020-12-15 2021-04-02 用友网络科技股份有限公司 模式化代码生成方法、装置和计算机可读存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1831766A (zh) * 2005-03-10 2006-09-13 国际商业机器公司 用于管理计算机程序代码的开发对象的方法和系统
CN103235729A (zh) * 2013-04-18 2013-08-07 南京大学 一种基于代码变更的软件模型同步方法
WO2016085213A1 (ko) * 2014-11-27 2016-06-02 주식회사 엘지씨엔에스 컴퓨터 수행 가능한 모델 역공학 방법 및 장치
CN112596706A (zh) * 2020-12-15 2021-04-02 用友网络科技股份有限公司 模式化代码生成方法、装置和计算机可读存储介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918664A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种数据处理方法以及装置
CN113918427A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种数据变更响应方法以及装置
CN113918198A (zh) * 2021-12-14 2022-01-11 阿里云计算有限公司 一种模型-代码同步方法
WO2023109648A1 (zh) * 2021-12-14 2023-06-22 阿里云计算有限公司 一种模型-代码同步方法
CN114020323A (zh) * 2022-01-04 2022-02-08 阿里云计算有限公司 模型处理方法、代码获得方法、装置以及电子设备
CN115202732A (zh) * 2022-06-27 2022-10-18 深圳市互通创新科技有限公司 一种智能软件开发辅助系统及使用方法
CN115202732B (zh) * 2022-06-27 2023-08-08 苏州唐人数码科技有限公司 一种智能软件开发辅助系统及使用方法
CN117331548A (zh) * 2023-11-30 2024-01-02 厦门泛卓信息科技有限公司 一种基于智慧楼宇软件的低代码开发系统
CN117331548B (zh) * 2023-11-30 2024-01-23 厦门泛卓信息科技有限公司 一种基于智慧楼宇软件的低代码开发系统

Similar Documents

Publication Publication Date Title
CN113515278A (zh) 低代码模型处理方法、系统、电子设备及存储介质
CN111290753B (zh) 前端开发环境的搭建方法、装置、设备及存储介质
CN111209005B (zh) 程序文件的编译方法、装置和计算机可读存储介质
CN109144533A (zh) 一种应用程序的更新及加载的方法、系统及计算机装置
CN112363845A (zh) 系统集成中台的数据同步方法及集成中台系统
CN109460358B (zh) 基于Cmdb的配置管理方法及系统
CN106713469B (zh) 用于分布式容器的动态加载方法、装置及系统
CN116301951B (zh) 一种基于kubernetes的微服务应用安装升级方法及装置
CN113360156B (zh) 一种ios编译方法及相关设备
CN110659030B (zh) Unity项目编译方法、系统、计算机设备及存储介质
CN114115884A (zh) 一种编程服务的管理方法以及相关装置
CN111338685B (zh) 一种公用组件配置方法、装置、设备和存储介质
CN116107590A (zh) 软件产品开发部署中兼容微服务和单体架构的实现方法及系统
CN113590179B (zh) 插件检测方法、装置、电子设备及存储介质
CN115291933A (zh) 小程序数据包构建方法、装置、设备及存储介质
Ma et al. Model-based management of service composition
CN114356520A (zh) 微应用的运行方法、装置、设备、存储介质及程序产品
CN111090854A (zh) 目标程序的执行与转换方法、装置、终端和存储介质
JP2006236375A (ja) Webアプリケーション開発方法、開発支援システム、および該方法に係るプログラム
CN117724726B (zh) 一种数据处理方法和相关装置
Flores et al. Testing-based selection method for integrability on service-oriented applications
CN116088855B (zh) 开发方法、装置、电子设备和存储介质
CN112631620B (zh) 一种制作操作系统的方法、系统、设备及介质
CN117055858A (zh) 一种前端脚手架的搭建方法
CN109492181B (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