CN116301821A - 一种元数据文件的生成方法及设备 - Google Patents
一种元数据文件的生成方法及设备 Download PDFInfo
- Publication number
- CN116301821A CN116301821A CN202211734867.0A CN202211734867A CN116301821A CN 116301821 A CN116301821 A CN 116301821A CN 202211734867 A CN202211734867 A CN 202211734867A CN 116301821 A CN116301821 A CN 116301821A
- Authority
- CN
- China
- Prior art keywords
- metadata file
- template information
- management platform
- cloud management
- template
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 46
- 238000011161 development Methods 0.000 claims abstract description 33
- 239000000284 extract Substances 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 6
- 238000007726 management method Methods 0.000 description 71
- 238000010586 diagram Methods 0.000 description 23
- 238000013461 design Methods 0.000 description 16
- 238000012545 processing Methods 0.000 description 15
- 230000006870 function Effects 0.000 description 10
- 230000004044 response Effects 0.000 description 7
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000003032 molecular docking Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013499 data model Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000002688 persistence Effects 0.000 description 1
- 239000000523 sample Substances 0.000 description 1
- 239000007787 solid Substances 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/36—Software reuse
-
- 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/38—Creation or generation of source code for implementing user interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本申请提供一种元数据文件的生成方法及设备。在本申请的方法中,通过预先将架构模板和业务对象模板上传到云管理平台,使得开发人员能够在进行应用开发时从云管理平台选择所需的模板信息,然后根据模板信息生成相应的元数据文件,进而基于元数据文件生成服务框架代码,以进行后续的开发,从而能够提高应用的开发效率。
Description
技术领域
本申请涉及云计算技术领域,尤其涉及一种元数据文件的生成方法及设备。
背景技术
服务设计理念作为一种先进的系统设计理念已经成为各大企业新服务开发、老旧业务改造的首选。随着云计算的迅速发展,需要的服务也越来越多。而目前,同一组织的开发人员对于云服务或者云应用的依赖服务(包括版本)和服务工程目录设置、代码风格的选择可能按照自己的经验实施,在开发工具和开发框架层面缺乏统一的约束。同时,开发人员在进行云服务或者云应用开发时通常都是单独的一个一个进行开发,相同的业务对象模式不能复用,使得开发效率较低。
发明内容
本申请提供一种元数据文件的生成方法及设备,用以帮助开发人员快速开发应用,提高开发效率。
第一方面,本申请提供一种元数据文件的生成方法。具体的,该方法包括:首先,云管理平台接收第一用户(即开发人员)选择的模板信息,该模板信息可包括第一架构模板信息和第一业务对象模板信息中的至少一种;然后,云管理平台根据所述模板信息生成与所述模板信息对应的元数据文件。其中,第一架构模板信息为多个架构模板信息中的任意一个,第一业务对象模板信息为多个业务对象模板信息中的任意一个。
通过上述技术方案,开发人员可以基于预先存储的模板进行应用开发,这样可提高应用开发的效率,能够提升用户体验。
在一种可能的设计中,所述方法还包括:云管理平台基于所述元数据文件生成服务框架代码,所述服务框架代码用于所述第一用户进行应用开发。通过上述技术方案,开发人员可以得到服务框架代码,这样可便于后续基于服务框架代码进行进一步开发,能够缩短应用开发的时间。
在一种可能的设计中,所述模板信息中的每一个模板均由第二用户通过集成开发环境IDE插件或者全球广域网web页面创建并上传到所述云管理平台;其中,所述第二用户可为系统架构师和/或租户。通过上述技术方案,系统架构师和/或租户(云资源的操作人员,可以为企业,也可以为个人)可以将自己设计的模板信息上传到云管理平台,从而实现资源共享,能够方便开发人员进行应用开发。
在一种可能的设计中,所述方法还包括:云管理平台接收客户端发送的第一元数据文件,所述第一元数据文件为与所述第一架构模板信息相对应的元数据文件,且所述第一元数据文件中包括配置信息,所述配置信息包括所述第二用户在控制界面上设置的框架配置信息和代码生成策略配置信息;云管理平台提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值;云管理平台将所述提取的与所述第一架构模板信息相关的数据结构和字段值保存为第一架构模板信息。
通过上述技术方案,系统架构师和/或租户可以在界面上完成对架构模板的设计,从而使得云管理平台保存用户所设计的架构模板。
在一种可能的设计中,所述云管理平台提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值,包括:所述云管理平台根据第一预设规则清除所述第一元数据文件中与所述第一架构模板信息无关的数据结构和字段值,并保留所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值。通过上述技术方案,云管理平台可以对元数据文件中包括的数据结构和字段值进行筛选,从而得到与架构模板信息相关的数据结构和字段值,这样可使得架构模板更加简洁。
在一种可能的设计中,所述方法还包括:所述云管理平台接收客户端发送的第二元数据文件,所述第二元数据文件为与所述第一业务对象模板信息相对应的元数据文件,且所述第二元数据文件中包括所述第二用户定义的业务对象信息;云管理平台提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值;云管理平台将所述提取的与所述第一业务对象模板信息相关的数据结构和字段值保存为第一业务对象模板信息。
通过上述技术方案,系统架构师和/或租户可以在界面上完成对业务对象模板的设计,从而使得云管理平台保存用户所设计的业务对象模板。
在一种可能的设计中,所述云管理平台提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值,包括:所述云管理平台根据第二预设规则清除所述第二元数据文件中与所述第一业务对象模板信息无关的数据结构和字段值,并保留所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值。
通过上述技术方案,云管理平台可以对元数据文件中包括的数据结构和字段值进行筛选,从而得到与业务对象模板信息相关的数据结构和字段值,这样可使得业务对象模板更加简洁。
第二方面,本申请提供一种元数据文件的生成装置,该装置可包括:收发单元,用于接收第一用户选择的模板信息,所述模板信息包括第一架构模板信息和第一业务对象模板信息中的至少一种;处理单元,用于根据所述模板信息生成与所述模板信息对应的元数据文件。
第三方面,本申请提供一种元数据文件的生成设备,该元数据文件的生成设备具有实现第一方面或第一方面任一种可能实现方式中的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。
所述元数据文件的生成设备包括:存储器和处理器;所述存储器,存储有计算机指令;所述处理器用于执行所述存储器所存储的计算机指令,以使所述元数据文件的生成设备执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
第四方面,本申请还提供一种计算机可读存储介质,所述存储介质存储有计算机指令,当所述计算机指令被元数据文件的生成设备执行时,使得所述元数据文件的生成设备执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
第五方面,本申请还提供一种计算机程序产品,所述计算机程序产品包括计算机指令,当所述计算机指令被元数据文件的生成设备执行时,使得所述元数据文件的生成设备执行上述第一方面或第一方面任一种可能实现方式中所述的方法。
关于第二方面至第五方面各种实施方式所带来的技术效果,可以参考对于第一方面或第一方面的各种实施方式的技术效果的介绍,在此处不作过多赘述。
附图说明
图1为本申请实施例提供的一种元数据的结构示意图;
图2为本申请实施例提供的一种应用场景示意图;
图3为本申请实施例提供的一种元数据文件的生成方法流程图;
图4为本申请实施例提供的一种用户界面示意图;
图5为本申请实施例提供的一种用户界面示意图;
图6为本申请实施例提供的一种用户界面示意图;
图7为本申请实施例提供的一种用户界面示意图;
图8为本申请实施例提供的一种基础业务对象模板示意图;
图9为本申请实施例提供的一种组合业务对象模板示意图;
图10为本申请实施例提供的一种架构模板的生成方法流程图;
图11为本申请实施例提供的一种业务对象模板的生成方法流程图;
图12为本申请实施例提供的一种元数据文件的生成装置示意图;
图13为本申请实施例提供的一种元数据文件的生成设备结构示意图。
具体实施方式
下面将结合附图对本实施例的实施方式进行详细描述。
以下,首先对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
1、云服务
基于因特网(Internet)、以表现层状态转移应用程序接口(representationalstate transfer application programming interface,REST API)形式提供的、满足企业互联网技术(internet technology,IT)所需的弹性计算、虚拟网络、数据存储、数据库等服务。本申请实施例中,可以将云服务的提供商简称为云厂商。
云服务例如可以包括但不限于私有网络(virtual private cloud,VPC)提供服务、网关提供服务、防火墙服务、网络地址转换(network address translation,NAT)服务、云盘、弹性公网IP(elastic IP address,EIP)、云监控服务以及其他各种云厂商提供的云服务。
2、租户
云资源的属主,是对云资源拥有管理权限的主体。
其中,租户可以按照业务需求,通过付费方式,向云厂商订购或租用云资源。租户对购买的云资源的管理权限可以包括但不限于安全管理权限、访问控制权限等。
在一些实施例中,租户可以为企业,也可以为个人用户,本申请实施例对此不作限定。
3、用户
云资源的操作人员,被云资源属主授权后才能操作云资源。或者也可以理解为当租户为企业时,该用户为租户授权的用户;当租户为个人用户时,该用户为个人用户。
在一些实施例中,用户对云资源的操作可以通过用户的电子设备(包括实体设备和/或虚拟装置)实现。
4、应用元数据
元数据,描述数据的数据,在本申请实施例中的元数据可以为描述应用关键信息的数据的数据,包含应用的技术架构的描述和业务对象的类型的描述,服务元数据可以以可扩展标记语言(Extensible Markup Language,XML)或者JavaScript对象标记系统(JavaScriptObject Notation,JSON)等形式被上传到对象存储服务中。
云管理平台通过元数据设计来定义业务模型、数据模型和技术模型。元数据类型通过对应的Java类来定义,序列化为JSON文档后由云管理平台生成工程目录和端到端的模型视图控制器(model view controller,MVC)代码。示例性的,元数据的结构可参见图1所示。
其中,元数据的四个顶层段可包括下述内容:
(1)、service:服务全局属性段,包括和架构模板相关的结构和字段。
(2)、model:业务模型定义段,包括和业务对象模板相关的结构和字段。
(3)、generatorPolicy:代码生成策略段,包括和架构模板相关的结构和字段。
(4)、extendComponent:外部组件依赖定义段。应理解,extendComponent外部组件依赖定义段在图1中没有示意出来。
应理解,图1中所示的service表示服务全局属性段,model表示业务模型定义段;objects表示业务模型定义;internalBOs表示业务对象定义列表;fields表示业务对象字段列表;indexes表示业务对象索引列表;enumFieldDefinitions表示枚举类型定义列表;relations表示业务对象关系列表;customApis表示用户定义API列表;customDtos表示用户自定义DTO列表;externalBOs表示外部业务对象引用列表;generatorPolicy表示代码生成策略段。
应理解,本申请实施例涉及的多个,是指大于或等于两个。另外,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
如图2所示,为本申请实施例提供的一种应用场景示意图,参阅图2所示,该场景包括:用户10、租户11、客户端20、云管理平台30和服务器40。其中,客户端20可以是WEB浏览器或者IDE(集成开发环境)插件,运行在用户的电子设备中,如笔记本电脑、个人计算机等;服务器40可包括至少一个服务器,图中仅是以两个服务器,比如服务器40A和服务器40B为例。
云管理平台30对外可通过互联网与用户10(例如系统架构师等)操作的电子设备、或者与租户11(例如可以为企业用户,或者个人用户)操作的电子设备连接。云管理平台30可通过数据中心的内部网络与至少一个服务器40连接。租户11可以在云管理平台30注册账号,该账号具有购买(包括订购或租用等不同付费形式)云资源的资格。在购买云资源成功后,租户11可通过云管理平台30创建云资源,云管理平台30可向租户11(包括租户授权的用户)提供合适的访问方式,以便租户11远程管理云资源,以及远程访问或使用云资源,来为租户11提供至少一种云服务。
在一些实施例中,用户10可以为系统架构师,系统架构师可以在客户端20上创建模板,比如架构模板和/或业务对象模板,然后系统架构师可通过客户端20将创建的模板上传到云管理平台30,以便后续开发人员在开发服务时可以基于统一的模板进行服务开发,保证架构一致性。并且,可以实现共享,提高开发效率。
在一些实施例中,当租户11为租户授权的用户或者个人用户时,租户授权的用户或者个人用户也可以自定义模板,然后通过客户端20将自定义的模板上传到云管理平台30上,以实现模板的共享和架构的一致性。
当系统架构师或者用户将模板上传到云管理平台30后,开发人员可以在云管理平台30上创建应用(云应用),并选择使用云管理平台30上的模板。并且,可以在模板的基础上进一步加工应用的元数据。然后,云管理平台30可基于相应的元数据生成应用的框架代码。
其中,模板可包括架构模板和业务对象模板。也就是说,开发人员可以在云管理平台30上选择架构模板,或者选择业务对象模板,或者同时选择架构模板和业务对象模板来开发应用。应理解,本申请实施例中架构模板为抽象的服务参考架构,如数据持久方式、服务治理方式、缓存加速方式、API风格、监控对接、认证鉴权安全服务对接等;业务对象模板为抽象的通用业务对象模型,如包含哪些业务对象及业务对象之间关系、业务对象包含那些字段、业务对象对应的数据表的分库分表方法等。
如图3所示,为本申请实施例提供的一种元数据文件的生成方法流程图,参阅图3所示,该方法可包括如下步骤:
步骤301:云管理平台30接收用户选择的模板信息。
其中,模板信息可包括架构模板信息和业务对象模板信息中的至少一种。也就是说,用户(这里的用户指的是开发人员)可以在云管理平台上选择架构模板信息,或者选择业务对象模板信息,或者同时选择架构模板信息和业务对象模板信息。
为了描述方便,可以将用户选择的架构模板记为:第一架构模板;将用户选择的业务对象模板记为:第一业务对象模板。其中,第一架构模板为多个架构模板(也可以理解为:架构模板库)中的任意一个架构模板,第一业务对象模板为多个业务对象模板(也可以理解为:业务对象模板库)中的任意一个业务对象模板。
在一些实施例中,用户(开发人员)可以通过客户端20新建一个应用,然后在客户端20的界面上输入应用的基本配置信息。示例性的,如图4所示,为本申请实施例提供的一种客户端的界面示意图,在图4所示界面中,开发人员可以在该界面输入基本配置信息,然后点击“下一步”,进入框架配置界面。
如图5所示,为本申请实施例提供的一种框架配置界面的示意图。在该界面中,用户可点击架构模板的下拉框,然后客户端20可从云管理平台30获取该用户可用的所有架构模板并展示给用户,接着用户可在所有架构模板中选择所需要的架构模板。应理解,图5所示界面也可以理解为架构模板的选择界面示意图。
在一些实施例中,当开发人员在客户端20上选择架构模板信息之后,客户端20可响应该用户操作,根据开发人员选择的架构模板信息,将与架构模板信息对应的元数据文件中的数据结构回填到图5所示的框架配置界面和图6所示的生成策略界面上。也就是说,当开发人员选择不同的架构模板时,图5所示的框架配置界面和图6所示的生成策略界面也有可能不同。
当然,如果开发人员不选择架构模板,也可以直接跳过该架构模板的选择界面,或者选择不使用架构模板,本申请对此不作限定。
在一些实施例中,用户可以改变模板中未设置值的其它字段,而对于架构模板中添加的相应字段值不允许改变。
在另一些实施例中,用户可以在图5所示的界面和图6所示的界面中改变架构模板中添加的相应字段值。
进一步的,当开发人员选择架构模板之后,如果还需要继续选择业务对象模板,则可在图7所示的业务设计界面进行业务对象模板的选择。开发人员可在图6所示的生成策略界面上点击“下一步”按钮,进入业务设计界面,此时客户端20可调用云管理平台30,获取可用的业务对象模板并展示在图7所示的界面上。接着,开发人员可在图7所示的界面上选择添加业务对象模板。当业务对象模板被添加到应用中后,模板中包含的业务对象及其关系的定义也将被添加到应用中。
当然,如果开发人员不选择业务对象模板,也可以直接跳过该业务对象模板的选择界面,或者选择不使用业务对象模板,本申请对此不作限定。
作为一种可能的实现方式,在本申请实施例中,业务对象模板可包括基础业务模板和组合业务模板两种。
(1)、基础业务模板
基础业务模板可以在设计一个服务的业务模型时候,在整个模型为空的时候添加,且只能添加一次。
示例性的,如图8所示,为本申请实施例提供的一种基础业务模板示意图。图8中的(a)所示模板为多租项目模板,该项目模板添加之后,可对图8中的(a)所示模板进行实例化,添加业务对象及其关系,例如图8中的(b)所示示意图。
(2)、组合业务模板
组合业务模板可以在设计一个服务的业务模型时候随时添加,同一模板可以添加多次,每次需添加不同的对象前缀,模板中包含的所有的业务对象名称都会增加此前缀。
如图9所示,为本申请实施例提供的一种组合业务模板示意图。图9中的(a)所示模板为版本对象的组合业务模板,该组合业务模板可以添加两次,添加完成之后,可对图9中的(a)所示模板进行实例化,例如图9中的(b)所示示意图。应理解,图9中的(b)所示示意图中上面的模板实例化后添加了新字段:DocumentType:string,图9中的(b)所示示意图中下面的模板实例化后添加了新字段:ApplicationType。
在另一些实施例中,开发人员还可以在图7所示的界面上继续添加其它业务对象,或者为业务对象新建关系。
在又一些实施例中,开发人员还可以在模板引入的业务对象和通过手工添加的业务对象之间新增关系。
应理解,图5、图6、图7所示的界面仅是一种示意,在实际应用中,用户操作不同时,比如用户选择的模板不同时,界面上显示的内容也可能不同,对此不作具体限定。
步骤302:云管理平台30根据模板信息生成与模板信息对应的元数据文件。
在一些实施例中,当开发人员在云管理平台30上选择架构模板信息之后,云管理平台30可响应该用户操作,根据用户选择的架构模板信息生成与该架构模板相对应的元数据文件。示例性的,继续参考图5,当用户在图5中通过下拉框“架构模板”,选择XX架构模板之后,云管理平台30可根据该模板信息生成对应的元数据文件,比如如下所示的元数据文件。
元数据文件示例如下:
应理解,上述代码仅是元数据文件的一部分示意,本申请对此不作具体限定。
在另一些实施例中,当开发人员在云管理平台30上选择业务对象模板信息之后,云管理平台30可响应该用户操作,根据用户选择的业务对象模板信息生成与该业务对象模板相对应的元数据文件。
步骤303:云管理平台30基于元数据文件生成应用的框架代码。
其中,应用的框架代码可供开发人员下载,然后利用该应用的框架代码开发应用。
在一些实施例中,开发人员可在图7所示的界面上点击“创建”按钮,然后,客户端20可将用户的创建指令提交到云管理平台30,此时云管理平台30可接收到用户选择的模板信息对应的元数据文件。然后,云管理平台30可基于元数据文件生成应用的框架代码。
进一步的,开发人员后续可从云管理平台30下载应用框架代码,并做进一步开发。
在一些实施例中,云管理平台30可将生成的应用框架代码上传到提前配置好的用户代码仓中,然后用户可从代码仓中下载代码。
通过上述实施例,开发人员可以在进行应用开发时从云管理平台选择所需的模板信息,然后根据模板信息生成相应的元数据文件,进而基于元数据文件生成服务框架代码,以进行后续的开发,从而提高应用的开发效率。
下面详细介绍架构模板和业务对象模板的生成过程。
首先,介绍架构模板的生成过程。示例性的,如图10所示,为本申请实施例提供的一种架构模板的生成流程图。参阅图10所示,该方法可包括如下步骤:
步骤1001:用户通过客户端20新建一个应用。
这里的用户可以为系统架构师或者租户。
步骤1002:设置应用的基本配置信息。
继续参考图4,在该步骤中,用户可在图4所示的界面设置应用的基本配置信息。应理解,图4所示的界面不包含应用架构模板需要保存的字段,可以在图4所示的界面点击跳过“下一步”按钮。
步骤1003:设置框架配置。
参考图5所示的界面,用户可在图5所示的界面设置架构模板的框架配置信息。具体的,可在图5所示界面设置service段数据结构。
下面详细介绍service段数据结构。其中,service段包含服务的顶层属性以及对其它云服务、中间件、数据的依赖,不允许为空。下面列出一些会被用于架构模板的属性列表。
(1)、programLanguage
(2)、databaseVersion
(3)、projectType
(4)、packageName
(5)、groupId
(6)、primaryKeyType
(7)、tablePrefix
(8)、apiFlavor
(9)、authentication
(10)、authorization
(11)、security
(12)、distributedTransaction
(13)、discovery
(14)、configuration
(15)、caching
(16)、messaging
(17)、packaging
(18)、dataSourceType
(19)、apmType
(20)、probeType
(21)、fullIndexType
步骤1004:设置代码生成策略配置。
参考图6所示的界面,用户可在图6所示的界面设置应用框架代码的生成策略配置信息。具体的,可在图6所示界面设置generatorPolicy段数据结构。
下面详细介绍generatorPolicy段数据结构。其中,generatorPolicy段包含服务的代码生成策略的控制。下面列出一些会被用于架构模板的属性列表。
(1)、scheduler
(2)、dmsProducer
(3)、dmsConsumer
(4)、entityPackageName
(5)、mapperPackageName
(6)、jsonPropertyFormat
(7)、dsPlugin
(8)、apiValidation
(9)、validateType
(10)、apiHeaderValidation
(11)、probe
(12)、standardResp
含义 | 标识是否使用默认格式的返回值包装返回内容。 |
类型约束 | 布尔类型,默认值为true。 |
使用说明 | 支持所有开发语言。 |
(13)、apigTag
(14)、sdkTag
(15)、customRespHeader
(16)、queryParamLimit
(17)、controller
(18)、clientType
(19)、enableClientControl
(20)、clientCacheType
(21)、propertyFormat
(22)、pagingType
(23)、hideOperationLabels
(24)、lombok
(25)、genUnitTest
(26)、supportMultiModule
(27)、modulePerDomainObject
含义 | 配置repositoty模块是否按照领域对象划分不同目录。 |
类型约束 | 布尔类型,默认值为false。 |
使用说明 | 支持所有的开发语言 |
步骤1005:客户端20响应用户的第一操作,将配置信息保存为架构模板。
示例性的,可在完成图5和图6配置后,用户可以在图6所示的界面上点击“保存为架构模板”的按钮,客户端20可响应该用户操作,将配置信息保存为架构模板。
步骤1006:客户端20将应用元数据提交到云管理平台30。
在一些实施例中,步骤802~步骤804中用户所配置的所有的配置项可以以应用元数据的形式,从客户端20提交到云管理平台30。应理解,在本申请实施例中,应用元数据、元数据文件指的是同一含义。
为了方便保存以及后续查找调用,此时用户可以为架构模板设置一个标识信息,比如架构模板1。当然,标识信息也可以为架构模板A等,本申请对此不作具体限定。
步骤1007:云管理平台30提取并保存应用元数据中与架构模板相关的数据结构和字段值。
在一些实施例中,云管理平台30保存架构模板时,可根据第一预设规则将不适用于模板的字段值清空(或者:清除),将所有和架构模板相关的字段保留下来。示例性的,以Java为例,比如第一预设规则可以为:将字段类型为对象的设置为空指针,基础类型设置为缺省值:数字型设置为0,布尔型设置为false。
在一些实施例中,云管理平台30可将架构模板进行序列化处理,然后保存序列化之后的文件。比如,云管理平台30可将架构模板序列化为JavaScript对象标记系统(JavaScriptObject Notation,JSON)、另一种标记语言(YAML Ain't Markup Language,YAML)、可扩展标记语言(Extensible Markup Language,XML)等格式中的任意一种。
在一些实施例中,云管理平台30可以为一个后端服务,比如GeneratorSvr,然后GeneratorSvr可将序列化之后的文件保存到图1所示服务器40的数据库,比如GeneratorSvrDB中。
通过上述实施例,可以实现架构模板供多个服务复用,从而加快服务开发效率、实现架构归一化。
进一步的,在一些实施例中,用户可以通过集成开发环境(IntegratedDevelopmentEnviron,IDE)插件创建服务架构模板,然后将创建好的服务架构模板上传到云管理平台30。
在另一些实施例中,用户可以通过全球广域网(world wide web,web)页面(或者浏览器页面)创建服务架构模板,然后将创建好的服务架构模板上传到云管理平台30。
下面介绍业务对象模板的生成过程。示例性的,如图11所示,为本申请实施例提供的一种业务对象模板的保存流程图。参阅图11所示,该方法可包括如下步骤:
步骤1101:用户通过客户端20新建一个应用。
这里的用户可以为系统架构师或者租户。
步骤1102:用户进行业务对象设计。
应理解,由于图4为应用基本配置信息的界面,图5和图6为架构模板的相关界面,在图9所示实施例中可以跳过图4、图5、图6的界面,直接在图7所示的界面进行业务对象的设计。
在一些实施例中,用户可以在图7所示的界面中编辑服务中涉及到的业务对象、业务对象包含的字段以及业务对象之间的关系。具体的,业务对象模板中可包括的数据结构和字段可参阅下述示例。其中,元数据中用于业务对象模板的字段定义在model段,相关数据结构和字段介绍如下。model业务模型定义段包含以下元数据对象定义:(1)、objects业务模型定义;(2)relations业务对象关系列表。
首先介绍objects业务模型定义,具体可包含以下元数据对象定义:internalBOs业务对象定义列表;enumFieldDefinitions枚举类型定义列表;fixedFields固定字段列表。internalBOs业务对象定义列表包含以下元数据对象定义:fields业务对象字段列表;indexes业务对象索引列表。同时,列表中每个BO定义包含以下字段:
(1)、name
含义 | Business object(BO)对象类型 |
类型约束 | String类型,以英文大写字母开头,可包含数字,驼峰格式,不允许为空 |
使用说明 |
(2)、chineseName
含义 | BO对象类型中文名 |
类型约束 | String类型,允许为空 |
使用说明 |
(3)、description
含义 | BO对象类型说明 |
类型约束 | String类型,允许为空 |
使用说明 |
(4)、type
(5)、boClass
(6)、father
含义 | 设置继承自的父BO类型 |
类型约束 | String类型 |
使用说明 | 父BO必须是boClass ABSTRACT类型 |
(7)、databaseVersion
(8)、tableName
(9)、primaryKeyType
(10)、atzType
(11)、atzFieldNames
含义 | 指定鉴权字段名 |
类型约束 | String类型 |
使用说明 | 仅atzType为FIELDS_LEVEL时可定义 |
(12)、atzOperations
(13)、distTransOperations
(14)、createOnly
含义 | 创建的BO对象不允许修改 |
类型约束 | Boolean类型,默认值为false |
使用说明 | 如果为true则该类对象没有修改和删除接口。 |
(15)、auditable
含义 | 是否审计BO对象的所有修改 |
类型约束 | Boolean类型,默认值为false |
使用说明 |
(16)、published
含义 | BO变化是否会自动发布到消息服务 |
类型约束 | Boolean类型,默认值为fasle |
使用说明 |
(17)、fields
含义 | BO包含的字段列表,每个字段对应数据库表的一列 |
类型约束 | 参见fields业务对象字段列表 |
使用说明 |
(18)、fixedFields
含义 | BO包含的固定字段列表 |
类型约束 | 参见fixedFields固定字段列表 |
使用说明 |
(19)、extendField
含义 | 标识该BO是否可以扩展字段 |
类型约束 | Boolean类型,默认值为false |
使用说明 |
(20)、extendBO
含义 | 标识该BO是否可以扩展出新的BO |
类型约束 | Boolean类型,默认值为false,需要extendField为true时才生效 |
使用说明 |
(21)、boExtActions
含义 | BO上自定义的扩展API |
类型约束 | 枚举类型列表 |
使用说明 |
(22)、softDelete
其中,fields业务对象字段列表中每个业务对象字段定义包含以下字段:
(1)、name
含义 | 字段名 |
类型约束 | 小驼峰格式,不允许为空 |
使用说明 | 对应数据库列表转化为全小写 |
(2)、type
(3)、Items
含义 | 标识列表中的具体元素类型 |
类型约束 | 枚举类型,type为ARRAY时生效,其它类型则被忽略 |
使用说明 |
(4)、length
含义 | 字段长度 |
类型约束 | Int类型 |
使用说明 |
(5)、decimals
含义 | 精度 |
类型约束 | Int类型,仅对浮点数类型有效 |
使用说明 |
(6)、remark
含义 | 字段说明 |
类型约束 | String类型 |
使用说明 |
(7)、defaultValue
含义 | 数据库中缺省值 |
类型约束 | String类型 |
使用说明 | 转化为Java类型时候可能要强制转化 |
(8)、columnName
含义 | 字段名 |
类型约束 | String类型,允许为空 |
使用说明 | 为空则由name的小驼峰格式转化为下划线连接格式 |
(9)、nullable
含义 | 字段是否允许为空 |
类型约束 | Boolean类型,默认值为false |
使用说明 |
(10)、searchable
(11)、fullIndexed
含义 | 是否允许全文检索 |
类型约束 | Boolean类型,默认值为false |
使用说明 | 为true时候该字段创建全文索引,需要支持全文检索 |
(12)、encrypted
(13)、auditable
含义 | 是否审计对象的所有修改 |
类型约束 | Boolean类型,默认值为false |
使用说明 | 为false时候继承BO的同字段定义,为ture时候强制开启字段变更audit日志 |
(14)、createOnly
(15)、primaryKey
含义 | 标识该字段是否为主键 |
类型约束 | Boolean类型,默认值为false |
使用说明 |
(16)、referenceBo
含义 | 关联的BO对象名称 |
类型约束 | String类型 |
使用说明 | 当有该对象名称时表示该field为指向bo对象的外键 |
(17)、autoAddedField
含义 | 针对自动生成的字段,标明改字段的类型 |
类型约束 | 枚举类型 |
使用说明 | 此字段在前端不可配置,仅针对自动添加字段,由系统设置 |
(18)、enumClassName
其中,indexes业务对象索引列表中每个索引对象定义包含以下字段:
(1)、fieldNames
含义 | 索引建立字段 |
类型约束 | 字符串列表类型 |
使用说明 | 列表中每个值对应业务对象字段name |
(2)、type
其中,enumFieldDefinitions枚举类型定义列表中每个枚举类型定义包含以下字段:
(1)、name
含义 | 枚举类类名 |
类型约束 | String类型,大驼峰,不允许为空 |
使用说明 |
(2)、values枚举值列表
每个枚举值包含以下两个字段
(2.1)、name
(2.2)、value
(3)、valueType
(4)、dbConvertBy
(5)、pgAlias
其中,fixedFields固定字段列表可包括下述字段:
(1)、name
含义 | 定义本服务内每个BO都包含的固定字段列表 |
类型约束 | String类型 |
使用说明 |
其中,relations业务对象关系列表中每关系对象定义包含以下字段:
(1)、name
含义 | 关系名称 |
类型约束 | 不允许为空,一般为rel-{primary}-{secondary},可定制 |
使用说明 |
(2)、primary
含义 | 关系主动方BO名称 |
类型约束 | String类型,不允许为空 |
使用说明 |
(3)、secondary
含义 | 关系被动方BO名称 |
类型约束 | String类型,不允许为空 |
使用说明 |
(4)、relationType
(5)、apiTypes
(6)、tableName
(7)、fields
(8)、operations
步骤1103:客户端20响应用户的第二操作,将业务对象相关的信息保存为业务对象模板。
参考图7所示界面,用户可在图7所示界面点击“保存为业务模板”的按钮,然后客户端20可响应该用户操作,将用户在图7中编辑的业务对象相关信息,比如业务对象、业务对象之间的关系保存为业务模板。
步骤1104:客户端20将应用元数据提交到云管理平台30。
在一些实施例中,用户在步骤902中定义的业务对象相关的信息可以以应用元数据的形式,从客户端20提交到云管理平台30。并且,用户需要为业务对象模板设置一个标识信息,比如记为业务对象模板A。当然,标识信息也可以为业务对象模板1等,本申请对此不作具体限定。
步骤1105:云管理平台30提取并保存应用元数据中与业务对象模板相关的数据结构和字段值。
应理解,在该步骤中可根据第二预设规则清除应用元数据中与业务对象模板无关的数据结构和字段值。其中,第二预设规则与图10所示实施例中的第一预设规则可能不同,也可能相同,本申请对此不作限定。
通过上述实施例,可以将可复用的经典业务模型另存为业务模板供其它服务复用,减少相同技术模型的重复设计,提高开发效率,实现后台数据标准化。
应理解,图10和图11所示实施例仅是用户创建的模板不同,图10所示实施例中用户创建的架构模板,图11所示实施例中用户创建的是业务对象模板。对于图10所示实施例和图11所示实施例中的相同或相似的步骤,比如处理模板中的字段值、序列化处理等可参阅图10所示实施例中的详细介绍,此处不再重复赘述。
下面以Java为例介绍云管理平台清除不适用于模板的字段值的示例。
1、定义枚举类:
2、定义Annotation类:
3、整体元数据的定义:
4、服务的顶层属性定义:
以MetaService类定义(对应附录1中的service段)为例,字段programLanguage和
framework包含注解@Templated(policy=TemplatePolicy.ARCHITECTURE),对应字段值会被保存在服务架构模板中:
public class MetaService implements MetaNode{
/**
*本微服务所属的云服务(或者称为应用),允许为空。当framework为WUSHAN,不为空。
*/
private String cloudService;
/**
*微服务所在服务组,允许为空。当framework为WUSHAN,不为空。
*/
private String group;
/**
*微服务名称,不允许为空,以英文字母开头,包含英文字母和数字,一般采用驼峰格式。
*/
private String name;
/**
*微服务使用的编程语言。缺省为JAVA。
*/
@Templated(policy=TemplatePolicy.ARCHITECTURE)
private ProgramLanguage programLanguage=ProgramLanguage.JAVA;
/**
*微服务使用的开发框架。缺省为DEVSPORE,可以扩展为其它用户框架。
*/
@Templated(policy=TemplatePolicy.ARCHITECTURE)
private Framework framework=Framework.DEVSPORE;
应理解,上述代码仅是部分示意,而且上述示例仅是以Java语言为例,在本申请实施例中并不限定编程语言,例如还可以为Go、Python、Node.js、C++等,对此不作限定。
基于上述实施例,本申请还提供一种元数据的生成装置,该装置可以是前述实施例中的云管理平台。参阅图12所示,该元数据的生成装置1200可包括:收发单元1201和处理单元1202。
其中,收发单元1201用于接收第一用户选择的模板信息,所述模板信息包括第一架构模板信息和第一业务对象模板信息中的至少一种;处理单元1202用于根据所述模板信息生成与所述模板信息对应的元数据文件。
在一种可能的实现方式中,所述处理单元1202还用于基于所述元数据文件生成服务框架代码,所述服务框架代码用于所述第一用户进行应用开发。
在一种可能的实现方式中,所述模板信息中的每一个模板均由第二用户通过集成开发环境IDE插件或者全球广域网web页面创建并上传到所述云管理平台。
在一种可能的实现方式中,所述收发单元1201还用于接收客户端发送的第一元数据文件,所述第一元数据文件为与所述第一架构模板信息相对应的元数据文件,且所述第一元数据文件中包括配置信息,所述配置信息包括所述第二用户在控制界面上设置的框架配置信息和代码生成策略配置信息;所述处理单元1202还用于提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值;并将提取的与所述第一架构模板信息相关的数据结构和字段值保存为第一架构模板信息。
在一种可能的实现方式中,所述处理单元1202具体用于按如下方式提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值:
根据第一预设规则清除所述第一元数据文件中与所述第一架构模板信息无关的数据结构和字段值,并保留所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值。
在一种可能的实现方式中,所述收发单元1201还用于接收客户端发送的第二元数据文件,所述第二元数据文件为与所述第一业务对象模板信息相对应的元数据文件,且所述第二元数据文件中包括所述第二用户定义的业务对象信息;所述处理单元1202还用于:提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值;并将提取的与所述第一业务对象模板信息相关的数据结构和字段值保存为第一业务对象模板信息。
在一种可能的实现方式中,所述处理单元1202具体用于按如下方式提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值:
所述云管理平台根据第二预设规则清除所述第二元数据文件中与所述第一业务对象模板信息无关的数据结构和字段值,并保留所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值。
本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本申请各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
如图13所示为本申请实施例提供的一种元数据的生成设备1300,该元数据的生成设备1300可以是前述实施例中的云管理平台。该元数据的生成设备1300包括至少一个处理器1302,用于实现或用于支持元数据的生成设备1300实现如本申请实施例提供的图12所示的处理单元1202的功能。示例性地,处理器1302可以根据模板信息生成与所述模板信息对应的元数据文件等,具体参见方法示例中的详细描述,此处不做赘述。
元数据的生成设备1300还可以包括至少一个存储器1301,用于存储程序指令。存储器1301和处理器1302耦合。本申请实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1302可能和存储器1301协同操作。处理器1302可能执行存储器1301中存储的程序指令和/或数据。所述至少一个存储器中的至少一个可以包括于处理器中。
元数据的生成设备1300还可以包括收发器1303,用于通过传输介质和其它设备进行通信。处理器1302可以利用收发器1303收发数据。收发器1303用于实现或用于支持元数据的生成设备1300实现如本申请实施例提供的图12所示的收发单元1201的功能。示例性的,收发器1303可用于接收第一用户选择的模板信息,所述模板信息包括第一架构模板信息和第一业务对象模板信息中的至少一种。
本申请不限定上述收发器1303、处理器1302以及存储器1301之间的具体连接介质。本申请实施例在图13中以存储器1301、处理器1302以及收发器1303之间通过总线1304连接,总线在图13中以粗线表示。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图13中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
在本申请实施例中,处理器1302可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接由硬件处理器执行完成,或者由处理器中的硬件及软件模块组合执行完成。
在本申请实施例中,存储器1301可以是非易失性存储器,比如硬盘(hard diskdrive,HDD)或固态硬盘(solid-state drive,SSD)等,还可以是易失性存储器(volatilememory),例如RAM。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本申请实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
本申请实施例中还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行上述实施例的方法。
本申请实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行上述实施例的方法。
本申请实施例中还提供一种芯片,所述芯片中的逻辑用于执行上述实施例的方法。
本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种元数据文件的生成方法,其特征在于,包括:
云管理平台接收第一用户选择的模板信息,所述模板信息包括第一架构模板信息和第一业务对象模板信息中的至少一种;
所述云管理平台根据所述模板信息生成与所述模板信息对应的元数据文件。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述云管理平台基于所述元数据文件生成服务框架代码,所述服务框架代码用于所述第一用户进行应用开发。
3.如权利要求1或2所述的方法,其特征在于,所述模板信息中的每一个模板均由第二用户通过集成开发环境IDE插件或者全球广域网web页面创建并上传到所述云管理平台。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述云管理平台接收客户端发送的第一元数据文件,所述第一元数据文件为与所述第一架构模板信息相对应的元数据文件,且所述第一元数据文件中包括配置信息,所述配置信息包括所述第二用户在控制界面上设置的框架配置信息和代码生成策略配置信息;
所述云管理平台提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值;
所述云管理平台将提取的与所述第一架构模板信息相关的数据结构和字段值保存为第一架构模板信息。
5.如权利要求4所述的方法,其特征在于,所述云管理平台提取所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值,包括:
所述云管理平台根据第一预设规则清除所述第一元数据文件中与所述第一架构模板信息无关的数据结构和字段值,并保留所述第一元数据文件中与所述第一架构模板信息相关的数据结构和字段值。
6.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述云管理平台接收客户端发送的第二元数据文件,所述第二元数据文件为与所述第一业务对象模板信息相对应的元数据文件,且所述第二元数据文件中包括所述第二用户定义的业务对象信息;
所述云管理平台提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值;
所述云管理平台将提取的与所述第一业务对象模板信息相关的数据结构和字段值保存为第一业务对象模板信息。
7.如权利要求6所述的方法,其特征在于,所述云管理平台提取所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值,包括:
所述云管理平台根据第二预设规则清除所述第二元数据文件中与所述第一业务对象模板信息无关的数据结构和字段值,并保留所述第二元数据文件中与所述第一业务对象模板信息相关的数据结构和字段值。
8.一种元数据文件的生成设备,其特征在于,包括:存储器和处理器;
所述存储器,存储有计算机指令;
所述处理器,用于执行所述存储器所存储的计算机指令,以使所述元数据文件的生成设备执行如权利要求1-7中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机指令,当所述计算机指令被元数据文件的生成设备执行时,使得所述元数据文件的生成设备执行如权利要求1-7中任一项所述的方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品包括计算机指令,当所述计算机指令被元数据文件的生成设备执行时,使得所述元数据文件的生成设备执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734867.0A CN116301821A (zh) | 2022-12-30 | 2022-12-30 | 一种元数据文件的生成方法及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211734867.0A CN116301821A (zh) | 2022-12-30 | 2022-12-30 | 一种元数据文件的生成方法及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116301821A true CN116301821A (zh) | 2023-06-23 |
Family
ID=86822914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211734867.0A Pending CN116301821A (zh) | 2022-12-30 | 2022-12-30 | 一种元数据文件的生成方法及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116301821A (zh) |
-
2022
- 2022-12-30 CN CN202211734867.0A patent/CN116301821A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11886806B2 (en) | Templating process for a multi-page formatted document | |
US11561846B2 (en) | API notebook tool | |
US11669503B2 (en) | Building and managing data-processing attributes for modeled data sources | |
CN114035773B (zh) | 一种基于配置的低代码开发表单方法、系统及装置 | |
US10127023B2 (en) | Computer-aided development of native mobile application code | |
MX2007015887A (es) | Flujos de trabajos centricos de datos. | |
CN115712413B (zh) | 低代码开发方法、装置、设备及存储介质 | |
TW201439792A (zh) | 資料庫訪問系統及方法 | |
US8413109B2 (en) | Systems and methods for metamodel transformation | |
US20190005228A1 (en) | Trusted and untrusted code execution in a workflow | |
CN108268615A (zh) | 一种数据处理方法、装置以及系统 | |
CN115983226A (zh) | 表单模板的自动创建方法、装置、电子设备及存储介质 | |
US20170199858A1 (en) | Form management system and method | |
JP7014960B2 (ja) | 情報処理装置、サーバ、その処理方法及びプログラム | |
CN107533468A (zh) | 用于云和设备套件的可扩展性捆绑包 | |
CN106998350B (zh) | 基于跨用户消息的功能项使用框架的方法及系统 | |
CN116301821A (zh) | 一种元数据文件的生成方法及设备 | |
TWI522824B (zh) | 從資料集詮釋資料產生表單驗證程式與對應表單介面之方法 | |
CN114581033B (zh) | 政务审批业务快速开发方法和装置及设备 | |
WO2019019377A1 (zh) | 安全键盘配置方法、装置、终端和存储介质 | |
US7660789B2 (en) | Entity agent | |
Hodel | Integration with Third-Party Tools | |
Kapitanov | Salesforce Lightning Platform | |
JP2024153930A (ja) | 情報処理装置、情報処理システム、制御方法、プログラム及び記録媒体 | |
CN117931143A (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 |