CN111767095A - 微服务生成方法、装置、终端设备及存储介质 - Google Patents
微服务生成方法、装置、终端设备及存储介质 Download PDFInfo
- Publication number
- CN111767095A CN111767095A CN202010615146.2A CN202010615146A CN111767095A CN 111767095 A CN111767095 A CN 111767095A CN 202010615146 A CN202010615146 A CN 202010615146A CN 111767095 A CN111767095 A CN 111767095A
- Authority
- CN
- China
- Prior art keywords
- micro
- service
- target template
- information
- data structure
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/20—Software design
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请适用于研发管理技术领域,提供了一种微服务生成方法、装置、终端设备及存储介质,其中,一种微服务生成方法包括:获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能;根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板;解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。解决每次开发的业务系统对应基础微服务的脚本文件繁多,其需耗费大量的时间和精力去进行开发和编写,导致在基础服务开发期间产生耗时耗力的情况。
Description
技术领域
本申请涉及研发管理技术领域,尤其涉及一种微服务生成方法、装置、终端设备及存储介质。
背景技术
随着国内经济的高速发展,对于不断变化的产品业务,其对应的系统如何快速开发、快速上线、快速占领市场成为软件产品开发的核心问题。目前,对应的系统在开发过程中,需要预先生成基础服务的过程必不可少。然而,基础服务在生成过程中需要满足不同业务的要求,且不同业务之间满足的数据结构也不一样。因此,在每次开发新系统时,均需要重新编写适用于业务需要的基础服务的脚本文件。而基础微服务的脚本文件繁多,其需耗费大量的时间和精力去进行开发和编写,导致在基础服务开发期间产生耗时耗力的情况。
发明内容
有鉴于此,本申请实施例提供了一种微服务生成方法、装置、终端设备及计算机可读存储介质,以解决现有技术中基础微服务的脚本文件繁多,其需耗费大量的时间和精力去进行开发和编写,导致在基础服务开发期间产生耗时耗力的的问题。
本申请实施例的第一方面提供了一种微服务生成方法,包括:
获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能;
根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板;
解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;
将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
在一实施例中,所述根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板,包括:
根据所述微服务框架信息,获取与所述微服务框架信息建立关联关系的第一标识信息;
根据所述第一标识信息调用所述第一数据接口;其中,所述第一数据接口用于在被调用时与模板库建立接口连接;
通过所述第一数据接口,从所述模板库中获取与所述第一标识信息相对应的第一目标模板。
在一实施例中,所述解析所述微服务功能,得到实现所述微服务功能对应的第二目标模板,包括:
解析所述微服务功能,得到第一数据结构,以及所述第一数据结构的第一注释信息;
获取所述第一数据结构对应的第一功能模块;
将所述第一注释信息写入所述第一功能模块,生成所述微服务功能对应的第二目标模板。
在一实施例中,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
将所述第一数据结构写入微服务文件的数据库中,以使得所述微服务文件在运行时,可将用户登录微服务的登录信息,按照相应的所述第一数据结构,写入所述数据库中。
在一实施例中,所述获取所述第一数据结构对应的第一功能模块,包括:
根据所述第一数据结构,获取与所述第一数据结构建立关联关系的第二标识信息;
根据所述第二标识信息调用第二数据接口,从模板库中获取相对应的第一功能模块。
在一实施例中,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
获取修改后的微服务功能,解析所述修改后的微服务功能息得到第二数据结构,以及所述第二数据结构的第二注释信息;
获取第二数据结构对应的第二功能模块,并将所述第二注释信息写入所述第二功能模块中,生成第三目标模板;
根据所述第三目标模板,对当前所述微服务文件中的所述第二目标模板进行修改,生成修改的后微服务文件。
在一实施例中,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
获取预先设置的网页接口;
根据所述网页接口的接口规范,建立所述微服务文件与网页接口的连接;所述网页接口用于使所述微服务文件与其余微服务文件建立连接,使多个所述微服务文件之间能够进行数据传输。
本申请实施例的第二方面提供了一种微服务生成装置,包括:
第一获取模块,用于获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能;
调用模块,用于根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板;
解析模块,用于解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;所述第二目标模板用于写入所述第一目标模板中,实现所述微服务功能;
生成模块,用于将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
本申请实施例的第四方面提供了一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在终端设备上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方案提供的微服务生成方法的各步骤。
本申请实施例的第五方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方案提供的微服务生成方法的各步骤。
实施本申请实施例提供的一种微服务生成方法、装置、终端设备及计算机可读存储介质具有以下有益效果:
本申请实施例提供的一种微服务生成方法,通过获取用户预先配置的第一配置指引列表,根据指引列表中的服务框架信息,调用对应的第一数据接口从模板库中获取指定的第一目标模板,并通过解析微服务功能在模板库中获取相应的第二目标模板,在将第二目标模板写入第一目标模板预留位置后,使对应生成微服务文件,可以实现当前微服务功能所对应需要满足的数据结构要求。解决在每次开发新系统时,还需要重新编写适用于业务功能和业务功能对应的数据结构的脚本文件的问题。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种微服务生成方法的实现流程图;
图2是本申请另一实施例提供的一种微服务生成方法的实现流程图;
图3是本申请再一实施例提供的一种微服务生成方法的实现流程图;
图4是本申请实施例提供的一种微服务生成装置的结构框图;
图5是本申请实施例提供的一种终端设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例所涉及的微服务生成方法,可以由控制设备或终端(以下称“移动终端”)执行。
请参阅图1,图1示出了本申请实施例提供的一种微服务生成方法的实现流程图。
S101、获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能。
在应用中,上述第一配置指引列表可以为用户预先设置的表格,并存储在数据库中,终端可根据数据库中存储的第一配置指令列表,依次生成相对应的微服务文件;或者,上述第一配置指引列表可以为用户在终端的应用界面进行操作,根据用户的操作指令形成的第一配置指引列表,对此不作限定。上述微服务框架信息用于描述生成微服务的基础模板信息,对应不同的微服务框架信息所使用的的模板信息各不相同。上述微服务功能包括生成的微服务在运行时,对相应的数据结构所需要满足的功能,其可以预先配置在数据库中,也可以根据用户的操作指令快速生成,对此不作限定。
具体的,在终端内部具有自动生成微服务的生成工具,在该生成工具的应用界面中具有所有微服务框架信息和所需实现的微服务功能。例如,需要生成的微服务框架信息包括但不限于是否支持单点登录(Single Sign On,SSO)及技术类型的基础功能、是否提高登录鉴权的功能、登录鉴权的有效时间为多久等。示例性的,对于上述支持单点登录的服务框架信息,可设置单点登录的技术类型为keycloak类型、jeesite类型、shiro类型的任意一种,对此不作限定。对于上述登录鉴权功能的服务框架信息,其具有临时凭证(Token),代表单一客户端对特定资源的访问权限,在根据选择的微服务框架信息生成微服务时,可具有登录鉴权功能,生成的微服务可管理客户端申请和管理Token服务。
示例性的,对于上述微服务框架信息若为支持单点登录功能,则用户在通过生成的微服务进行登录时,需提供账号和密码。而密码是极度私密的信息,很多人不同账号的密码都是一样的,若密码以明文保存在数据库中则很不安全。则微服务功能则可以是对于输入的密码,根据用户是否选择需要加密功能对其进行处理,并且在选择加密的情况下,根据其对应的加密方式,对密码实现加密处理。
示例性的,对于上述微服务框架信息若为提供登录鉴权功能,则在微服务具有登录鉴权功能后,其微服务对应的具体应用场景可以如下:用户使用终端中的微服务对应的小程序上传用户信息至生成的微服务,微服务调用小程序的应用程序接口(ApplicationProgram Interface,API)进行解密,获取用户信息(手机号、身份证号),而后查询数据库进行匹配权限信息。匹配成功后根据数字身份识别框架(openId)生成加密鉴权信息,并将加密鉴权信息进行缓存并返回至终端,由终端进行保存。其中,加密鉴权信息包括令牌token、刷新令牌(refresh Token)、APIKey(API KEY是针对接口访问的授权方式)。其中,token即是获取受保护资源的凭证,其登录鉴权的有效时间可以为1小时或1天,具体可根据实际情况设置,刷新令牌refresh Token用于刷新令牌token,终端保存的token和refresh token可以用于下一次继续登录访问服务器。通过生成工具根据预先配置的服务框架信息,实现了微服务登录鉴权功能,使用目前流行的token机制进行鉴权,在token内写入时间,提供登录超时服务,让微服务的安全性得到有力的保障。
S102、根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板。
在应用中,上述第一数据接口可以为应用程序接口,用于查询、录制、索引相应文件。上述第一目标模板可以认为是一个目标文件,其由代码段和数据段组成,代码段中所包含的主要是程序的指令,该代码段一般是可读和可执行的。数据段主要存放程序中要用到的各种全局变量或静态的数据,一般数据段都是可读,可写或可执行。
在应用中,上述第一目标模板可以预先由开发人员进行开发并将其缓存至模板库中,在生成微服务时,根据微服务框架信息进行对应进行获取。其中,获取方式可以为第一数据结构与第一目标模板为一对一映射关系,并预先设定每个服务框架信息和第一数据接口的关联关系。在获取到服务框架信息时,便可根据关联关系调用对应的第一数据接口,并根据映射关系找到第一目标模板的存储位置进行调用。或者,预先设定第一数据接口的访问路径,赋予第一数据接口获取指定位置下的文件的功能。例如,在调用第一数据接口时,终端可根据第一数据接口预先设定的访问路径,查询第一目标模板的存储位置,并通过第一数据接口进行获取,对此不作限定。
S103、解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板。
在应用中,上述解析微服务功能可以为解析第一配置指引列表中的指定区域的表格内容,得到的信息即为微服务功能。示例性的,若表格中的加密单元格处于第一行第一列,第二行第一列下的单元格中的信息则可用于表示是否选择加密功能。则在对表格形式的微服务功能进行解析时,若解析单元格对应的代码得到的信息为“encrypt=Y”,则代表微服务功能为选择加密,若解析单元格对应的代码得到的信息为“encrypt=N”,则代表微服务功能为选择不加密。其中,“encrypt”用于表示当前单元格为加密功能的单元格,“Y”表示微服务功能为对密码进行加密功能,“N”则表示微服务功能为不对密码进行加密功能。在其他示例中,第一配置指引列表中的微服务功能也可以通过其他形式被生成工具,并进行解析,对此不作限定。
在应用中,上述在获取第二目标模板时,也可预先设定每个微服务功能和其余数据接口的关联关系,根据数据接口查询指定路径下存储的第二目标模板。其与上述第一目标模板的获取方式可以一致,对此不再详细描述。其中,第二目标模板也可以认为是一个目标文件,其与第一目标模板一样,均可由代码段和数据段组成。
S104、将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
在应用中,上述微服务文件包括但不限于为可由操作系统直接进行加载并执行的文件、可被网络协议(http和/或https协议)直接访问并调用的网页接口等,对此不作限定。例如,微服务文件可以为网页接口,该网页接口的接口规范对应为Restful(一种软件架构风格,只提供一组设计原则和约束条件)接口,可被超文本传输协议(HTTP)请求调用。将微服务功能对应的代码信息(第二目标模板)通过写文件的方式写入第一目标模板中,修改第一目标模板中的代码内容,进而生成微服务功能对应的微服务文件。上述预留位置为第一目标模板中的占位符位置,在第一目标模板中本应赋予参数的位置未输入参数信息,在获取并传入参数信息后,则会代替占位符的。
示例性的,对于生成用户注册服务(服务框架信息),生成工具可根据定制的用户注册服务,先通过对应的第一数据接口从模板库中选取用户注册模板。而后根据解析订制的数据表结构(微服务功能),得到标注“注册功能参数”的微服务功能后,获取对应的代码信息(第二目标模板),自动将数据结构写入到用户注册模板预留的位置中(第一目标模板中的占位符),生成注册接口(用户注册微服务文件)。其中,占位符可以以“${parameter=A}”的形式进行设置,其中A表示注册功能的脚本文件,而注册功能的脚本文件可以在第一目标模板中A对应的位置处进行添加。另外。在生成用户注册接口后,还可通过雪花算法生成唯一性的ID作为用户的唯一标识,用于标识用户的注册信息。并将相应的“注册功能参数”的模板或代码信息放置在用户注册模板中预留的位置中,进而使生成工具能够自动完成该接口的开发,形成账号注册接口。
以上可以看出,本实施例提供的一种微服务生成方法,通过获取用户预先配置的第一配置指引列表,根据指引列表中的服务框架信息,调用对应的第一数据接口从模板库中获取指定的第一目标模板,并通过解析微服务功能在模板库中获取相应的第二目标模板,在将第二目标模板写入第一目标模板预留位置后,使对应生成微服务文件,可以实现当前微服务功能所对应需要满足的数据结构要求。解决在每次开发新系统时,还需要重新编写适用于业务功能和业务功能对应的数据结构的脚本文件的问题。
请参阅图2,图2是本申请另一实施例提供的一种微服务生成方法的实现流程图。相对于图1对应的实施例,本实施例提供的微服务生成方法在步骤S101之中还包括步骤S201~S203。详述如下:
S201、根据所述微服务框架信息,获取与所述微服务框架信息建立关联关系的第一标识信息。
在应用中,上述第一标识信息为唯一标识信息,其具有唯一性。上述微服务框架信息一般具有多个。因此,为区分各个微服务框架信息,均需对服务框架信息预先设置对应的第一标识信息进行唯一标识。用户在设定微服务框架信息后,需预先开发相应微服务框架信息的第一目标模块,并缓存在模板库中。其中,第一标识信息可以为数字、字母或特殊符号,对此不作限定。
S202、根据所述第一标识信息调用所述第一数据接口;其中,所述第一数据接口用于在被调用时与模板库建立接口连接。
在应用中,上述第一数据接口同样的也预先与第一标识信息具有关联关系,即第一数据接口、微服务框架信息具有相同的第一标识信息。在上述关联关系具有多个时,可将多个关联关系以图表的形式缓存在数据库中,其中,关联图表可以为以表格形式记载各个第一标识信息与微服务框架之间的关联关系。例如,表格分为微服务框架信息单元格、标识单元格、第一数据接口单元格等,对应的,在表格中填入相应微服务框架信息,及在表格同一行单元格中依次填入相应的第一标识信息、第一数据接口等。
S203、通过所述第一数据接口,从所述模板库中获取与所述第一标识信息相对应的第一目标模板。
在应用中,上述通过第一数据接口从模板库中获取第一目标模板具体可参照上述S102中的描述内容,对此不再详细描述。
以上可以看出,本实施例提供的一种微服务生成方法,可通过生成关联图表对微服务框架信息、第一标识信息与第一数据接口中的关联关系进行保存,可根据关联关系顺利获取到第一标识信息,进而快速确定第一数据接口,对微服务框架信息对应的第一目标模板进行获取。同时,用户也可在关联图表对关联关系进行增加、修改、删除等更新处理,例如新增微服务框架信息、第一标识信息与第一数据接口的关联关系,方便用户对其进行管理。
请参阅图3,图3是本申请另一实施例提供的一种微服务生成方法的实现流程图。相对于图1对应的实施例,本实施例提供的微服务生成方法在步骤S103之中还包括步骤S301~S303。详述如下:
S301、解析所述微服务功能,得到第一数据结构,以及所述第一数据结构的第一注释信息。
在应用中,微服务生成后需要满足业务功能的相应需求,以及满足业务对应的数据结构。具体的,微服务功能中的第一数据结构可以以表格的形式进行设置,可以分为主表和附表,其中主表包括账号、密码等必要结构功能,附表可以根据用户实际业务,选择不同的数据结构(比如医疗信息附加表、用户详细信息附加表、用户学历信息附加表等),且对应的每张附加表都可以选择填写是否填写参数名、参数类型、参数大小、是否必填、是否注册功能参数、是否修改功能参数、是否可修改、是否加密、查询是否脱敏等功能。上述第一注释信息即可认为是对上述参数名、参数类型、参数大小、是否必填、是否注册功能参数、是否修改功能参数、是否可修改、是否加密、查询是否脱敏等功能进行解释的信息。例如,对于参数名、参数类型、参数大小等功能的第一数据结构,参数注释中的信息即为第一注释信息,对于加密、脱敏等功能的第一数据结果,加密方式、脱敏方式即为第一注释信息。在其他应用中,上述微服务功能也可只包含第一数据结构,不包含第一注释信息,对此不作限定。
在应用中,上述微服务对应的表格中可包含多种数据结构,而在表格中填写的信息即为当前微服务功能对应的第一数据结构。即在上述表格中虽然有上述多个数据结构的选项,但微服务在运行时,表格中的对数据进行处理的功能不用全部实现,生成工具只会根据用户选择的第一数据结构对应生成微服务功能,以实现微服务运行时对数据的处理。
S302、获取所述第一数据结构对应的第一功能模块。
S303、将所述第一注释信息写入所述第一功能模块,生成所述微服务功能对应的第二目标模板。
在应用中,上述第一功能模块用于在微服务运行时,可对用户输入的数据进行处理。不同的业务对应的数据结构类型不同(医疗信息业务、学历信息业务等),因此,根据配置的第一数据结构生成的微服务,对用户输入的数据的处理也各不相同。上述获取第一功能模块的方式可以为预先设定每个第一数据结构的数据接口,并设定该数据接口在被调用时可与模板库建立接口连接的功能,并设定每个数据接口获取模板库中指定路径下的文件,将该文件对应作为第一功能模块。在应用中,若上述第一数据结构没有对应的第一注释信息时,此时第一数据结构对应的第一功能模块即为第二目标模板。
示例性的,生成工具对于“加密”的微服务功能,和“加密方式”的第一注释信息。其中,加密方式可以为通过从模板库中选定加密方式(例如,模板库中预存有多种加密方式的代码信息,比如对称加密、非对称加密等代码信息);或者,其加密方式也可为用户在表格中特定输入的加密方式的代码信息,作为加密功能的第一注释信息。进而实现对用户登录微服务时的密码进行加密保存和验证密码功能,将密码变成一段无法直接辨认的字符串。例如,对于加密功能,生成工具解析该数据结构时,则会得到“encrypt=yes”。其中,encrypt表示加密,则会获取“加密”的脚本文件(第一功能模块),并在第一目标模板的预留位置处进行添加。预留位置可以为${encrypt=A},其中A用于写入表示加密的脚本文件。而加密方式则可以在预留的占位符A中进行添加,或者,在第一目标模板的预留位置处还存在有加密方式的占位符,对此不作限定。其中,对于不进行加密的数据结构,也可预先在模板库中编写不对密码进行加密的脚本文件B,并在数据结构为不加密时,将B脚本文件写入预留的占位符A所在的位置,对此不作限定。
以上可以看出,本实施例提供的一种微服务生成方法,可预先设置微服务所需处理的多种基础数据结构的代码信息,用户可在面对不同业务所需要满足的数据结构时,灵活配置微服务功能所需处理数据的第一数据结构,进而获取对应的第一功能模块,结合配置的第一注释信息生成第二目标模块,以使得生成的微服务可在运行时对数据执行上述功能处理,无需重新编写适用于业务数据结构需要的基础服务的脚本文件。
在一实施例中,在S104之后,还包括:
将所述第一数据结构写入微服务文件的数据库中,以使得所述微服务文件在运行时,可将用户登录微服务的登录信息,按照相应的所述第一数据结构,写入所述数据库中。
在应用中,上述数据库用于存储数据信息,具体的,根据用户配置的第一指引列表中的微服务功能,生成工具可先将微服务功能所需处理的数据表构依次写入数据库中。用户在登录微服务时,微服务可将用户的注册信息(账号+密码)按照对应的数据结构保存在数据库中,以便记录用户的注册信息。即数据库中对应会有第一数据结构的表格,该表格用于填写用户的注册信息,并同时根据注释信息,对注册信息进行处理。例如,对于密码采用加密方式存储在表格中。另外,微服务还会在数据库中生成用户操作日志表,用于记录用户的操作信息。其中,操作日志表包括但不限于记载用户对数据库中存储的第一数据结构的内容,进行新增、修改、删除、查找等记录的服务,对此不作限定。
在一实施例中,S302包含:
根据所述第一数据结构,获取与所述第一数据结构建立关联关系的第二标识信息;
根据所述第二标识信息调用第二数据接口,从模板库中获取相对应的第一功能模块。
在应用中,上述第二标识信息与第一标识信息作用一致,均为唯一标识信息,其具有唯一性。上述第一数据结构具有多个,为区分各个第一数据结构,均需对各个第一数据结构预先设置对应的第二标识信息进行唯一标识。其中,第二数据结构为用户预先开发的通用功能代码,代码中的数据段一般存放程序中要用到的各种全局变量或静态的数据,对于该数据段中的各种全局变量可根据第一注释信息中内容进行替换,或者由用户根据实际情况进行修改。
在应用中,上述第二数据接口与第二标识信息的关系,与第一数据接口与第一标识信息的关系一致,对此不再详细描述,其均可以表格的形式存储在关联图表中。
以上可以看出,本实施例提供的一种微服务生成方法,可通过生成与上述微服务框架信息、第一标识信息与第一数据接口中相一致的关联关系进行保存,可根据关联关系顺利获取到第一标识信息,进而快速确定第一数据接口,对微服务框架信息对应的第一目标模板进行获取。同时,用户也可在关联图表对关联关系进行增加、修改、删除等更新处理,例如新增第一数据结构、第一功能模块与第二数据接口的关联关系,方便用户对其进行管理。
在一实施例中,在S104之后,还包括:
获取修改后的微服务功能,解析所述修改后的微服务功能息得到第二数据结构,以及所述第二数据结构的第二注释信息;
获取第二数据结构对应的第二功能模块,并将所述第二注释信息写入所述第二功能模块中,生成第三目标模板;
根据所述第三目标模板,对当前所述微服务文件中的所述第二目标模板进行修改,生成修改的后微服务文件。
在应用中,上述修改后的微服务功能为:相对于已经生成的微服务对应所需满足的微服务功能,用户对之前的微服务功能进行修改。即可认为对之前微服务所需满足的数据结构(第一数据结构)进行修改,使其在运行时需满足其余数据结构(第二数据结构)。
在应用中,上述第三目标模板与第二目标模板之间的差异包括但不限于:数据结构发生改变(增加新的数据结构、删除数据结构)、数据结构未发生改变,但对应的注释信息发生改变等,对此不作限定。
示例性的,在对原有微服务文件对应的第二目标模板进行修改时,对于已存在的加密功能,若第二数据结构的为不加密,则生成工具解析第二数据结构时,则会得到“encrypt=no”。则生成工具将替换在原有预留位置处增加的加密脚本文件,其修改的后第二功能模板可以为${encrypt=B},其中B表示为不进行加密的脚本文件。
在本实施例中,通过在原有微服务文件的基础上,根据解析的第三目标模板对其进行开发和修改的,减少新的微服务生成时所需脚本文件的重复开发,减少开发时间,快速生成可靠的微服务文件。
在一实施例中,在S104之后,还包括:
获取预先设置的网页接口;
根据所述网页接口的接口规范,建立所述微服务文件与网页接口的连接;所述网页接口用于使所述微服务文件与其余微服务文件建立连接,使多个所述微服务文件之间能够进行数据传输。
在应用中,若上述生成的微服务文件不为Restful接口规范的网页接口,还可单独建立微服务文件与网页接口的连接。具体的,上述已说明Restful接口为一种应用程序编程接口,其内部预先设定了相应的接口规范(请求协议、请求方式、请求参数、返回参数等)。该网页接口可预先由用户进行开发,并该网页接口动态存储在数据库中,以便生成工具可随时调用。
在应用中,上述微服务文件需要与其余微服务文件进行连接时,可根据相应的接口规范(请求协议、请求方式)预先建立微服务文件与网页接口之间的数据连接,并通过该网页接口与其余微服务文件建立连接。微服务文件与微服务文件之间的数据传输通过已定义的网页接口实现互通,达到在一个微服务运行过程中还可以兼容运行其他微服务功能的目的。
在其他应用中,若上述服务框架信息同时存在多个,则对应的第一目标模板也同时存在多个,为了将多个第一目标模板彼此进行连接,也可在每个第一目标模板中的头部或尾部添加引用的符号,并同该符号在其余第一目标模板中的定义进行连接,使得所有第一目标模板成为一个能够被微服务对应的操作系统同时执行的统一整体。
在本实施例中,通过对生成的微服务文件提供restful接口,使得微服务文件与微服务文件之间的数据传输通过已定义的网页接口实现互通,达到在一个微服务运行过程中还可以兼容运行其他微服务功能的目的,在已有微服务文件开发出时,通过网页接口实现连接,减少开发不必要的脚本文件。
请参阅图4,图4是本申请实施例提供的一种微服务生成装置的结构框图。本实施例中该移动终端包括的各单元用于执行图1至图3对应的实施例中的各步骤。具体请参阅图1至图3以及图1至图3所对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图4,微服务生成装置100包括:第一获取模块10、调用模块20、解析模块30和生成模块40,其中:
第一获取模块10,用于获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能。
调用模块20,用于根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板。
解析模块30,用于解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;所述第二目标模板用于写入所述第一目标模板中,实现所述微服务功能。
生成模块40,用于将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
作为本申请一实施例,调用模块20还用于:
根据所述微服务框架信息,获取与所述微服务框架信息建立关联关系的第一标识信息;
根据所述第一标识信息调用所述第一数据接口;其中,所述第一数据接口用于在被调用时与模板库建立接口连接;
通过所述第一数据接口,从所述模板库中获取与所述第一标识信息相对应的第一目标模板。
作为本申请一实施例,解析模块30还用于:
解析所述微服务功能,得到第一数据结构,以及所述第一数据结构的第一注释信息;
获取所述第一数据结构对应的第一功能模块;
将所述第一注释信息写入所述第一功能模块,生成所述微服务功能对应的第二目标模板。
作为本申请一实施例,微服务生成装置100还包括:
写入模块,用于将所述第一数据结构写入微服务文件的数据库中,以使得所述微服务文件在运行时,可将用户登录微服务的登录信息,按照相应的所述第一数据结构,写入所述数据库中。
作为本申请一实施例,解析模块30还用于:
第一接收模块,用于接收测试人员根据所述测试结果下发的修改指令。
根据所述第一数据结构,获取与所述第一数据结构建立关联关系的第二标识信息;
根据所述第二标识信息调用第二数据接口,从模板库中获取相对应的第一功能模块。
作为本申请一实施例,微服务生成装置100还包括:
第二获取模块,用于获取修改后的微服务功能,解析所述修改后的微服务功能息得到第二数据结构,以及所述第二数据结构的第二注释信息。
第三获取模块,用于获取第二数据结构对应的第二功能模块,并将所述第二注释信息写入所述第二功能模块中,生成第三目标模板。
修改模块,用于根据所述第三目标模板,对当前所述微服务文件中的所述第二目标模板进行修改,生成修改的后微服务文件。
作为本申请一实施例,微服务生成装置100还包括:
第四获取模块,用于获取预先设置的网页接口。
建立模块,用于根据所述网页接口的接口规范,建立所述微服务文件与网页接口的连接;所述网页接口用于使所述微服务文件与其余微服务文件建立连接,使多个所述微服务文件之间能够进行数据传输。
应当理解的是,图4示出的微服务生成装置的结构框图中,各单元/模块用于执行图1至图3对应的实施例中的各步骤,而对于图1至图3对应的实施例中的各步骤已在上述实施例中进行详细解释,具体请参阅图1至图3以及图1至图3所对应的实施例中的相关描述,此处不再赘述。
图5是本申请另一实施例提供的一种终端设备的结构框图。如图5所示,该实施例的终端设备50包括:处理器51、存储器52以及存储在所述存储器52中并可在所述处理器51上运行的计算机程序53,例如……方法的程序。处理器51执行所述计算机程序53时实现上述各个……方法各实施例中的步骤,例如图1所示的S101至S104,或者图2和图3所示的S201至S203以及S301至S303。或者,所述处理器51执行所述计算机程序53时实现上述图4对应的实施例中各模块/单元的功能,例如,图4所示的模块10至40的功能,具体请参阅图4对应的实施例中的相关描述,此处不赘述。
示例性的,所述计算机程序53可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器52中,并由所述处理器51执行,以完成本申请。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序53在所述终端设备50中的执行过程。例如,所述计算机程序53可以被分割成第一获取单元、第一确定单元、第一调整单元、第二调整单元以及执行单元,各单元具体功能如上所述。
所述转台设备可包括,但不仅限于,处理器51、存储器52。本领域技术人员可以理解,图5仅仅是终端设备50的示例,并不构成对终端设备50的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述转台设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器51可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器52可以是所述终端设备50的内部存储单元,例如终端设备50的硬盘或内存。所述存储器52也可以是所述终端设备50的外部存储设备,例如所述终端设备50上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器52还可以既包括所述终端设备50的内部存储单元也包括外部存储设备。所述存储器52用于存储计算机程序以及转台设备所需的其他程序和数据。所述存储器52还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种微服务生成方法,其特征在于,所述方法包括:
获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能;
根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板;
解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;
将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
2.根据权利要求1所述的微服务生成方法,其特征在于,所述根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板,包括:
根据所述微服务框架信息,获取与所述微服务框架信息建立关联关系的第一标识信息;
根据所述第一标识信息调用所述第一数据接口;其中,所述第一数据接口用于在被调用时与模板库建立接口连接;
通过所述第一数据接口,从所述模板库中获取与所述第一标识信息相对应的第一目标模板。
3.根据权利要求1所述的微服务生成方法,其特征在于,所述解析所述微服务功能,得到实现所述微服务功能对应的第二目标模板,包括:
解析所述微服务功能,得到第一数据结构,以及所述第一数据结构的第一注释信息;
获取所述第一数据结构对应的第一功能模块;
将所述第一注释信息写入所述第一功能模块,生成所述微服务功能对应的第二目标模板。
4.根据权利要求3所述的微服务生成方法,其特征在于,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
将所述第一数据结构写入微服务文件的数据库中,以使得所述微服务文件在运行时,可将用户登录微服务的登录信息,按照相应的所述第一数据结构,写入所述数据库中。
5.根据权利要求3任一所述的微服务生成方法,其特征在于,所述获取所述第一数据结构对应的第一功能模块,包括:
根据所述第一数据结构,获取与所述第一数据结构建立关联关系的第二标识信息;
根据所述第二标识信息调用第二数据接口,从模板库中获取相对应的第一功能模块。
6.根据权利要求1所述的微服务生成方法,其特征在于,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
获取修改后的微服务功能,解析所述修改后的微服务功能息得到第二数据结构,以及所述第二数据结构的第二注释信息;
获取第二数据结构对应的第二功能模块,并将所述第二注释信息写入所述第二功能模块中,生成第三目标模板;
根据所述第三目标模板,对当前所述微服务文件中的所述第二目标模板进行修改,生成修改的后微服务文件。
7.根据权利要求1所述的微服务生成方法,其特征在于,在所述将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件之后,还包括:
获取预先设置的网页接口;
根据所述网页接口的接口规范,建立所述微服务文件与网页接口的连接;所述网页接口用于使所述微服务文件与其余微服务文件建立连接,使多个所述微服务文件之间能够进行数据传输。
8.一种微服务生成装置,其特征在于,包括:
第一获取模块,用于获取第一配置指引列表,所述第一配置指引列表用于描述微服务框架信息与微服务功能;
调用模块,用于根据所述第一配置指引列表中描述的所述微服务框架信息,调用第一数据接口获取对应的第一目标模板;
解析模块,用于解析所述微服务功能,获取实现所述微服务功能对应的第二目标模板;所述第二目标模板用于写入所述第一目标模板中,实现所述微服务功能;
生成模块,用于将所述第二目标模板写入至所述第一目标模板预留位置中,对应生成微服务文件。
9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010615146.2A CN111767095A (zh) | 2020-06-30 | 2020-06-30 | 微服务生成方法、装置、终端设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010615146.2A CN111767095A (zh) | 2020-06-30 | 2020-06-30 | 微服务生成方法、装置、终端设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111767095A true CN111767095A (zh) | 2020-10-13 |
Family
ID=72724197
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010615146.2A Pending CN111767095A (zh) | 2020-06-30 | 2020-06-30 | 微服务生成方法、装置、终端设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111767095A (zh) |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217731A (zh) * | 2020-10-16 | 2021-01-12 | 青岛海尔科技有限公司 | 目标应用的生成方法及装置、存储介质 |
CN112311902A (zh) * | 2020-12-23 | 2021-02-02 | 深圳市蓝凌软件股份有限公司 | 基于微服务的文件发送方法及装置 |
CN112364338A (zh) * | 2020-11-30 | 2021-02-12 | 杭州安恒信息技术股份有限公司 | 一种微服务框架的管理方法、装置、电子装置和存储介质 |
CN112416321A (zh) * | 2020-11-18 | 2021-02-26 | 青岛海尔科技有限公司 | 应用生成方法、装置和存储介质及电子装置 |
CN112738060A (zh) * | 2020-12-24 | 2021-04-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN112929358A (zh) * | 2021-01-29 | 2021-06-08 | 中国工商银行股份有限公司 | 用于微服务编排的方法和装置、电子设备、及介质 |
CN113312037A (zh) * | 2021-06-15 | 2021-08-27 | 北京百度网讯科技有限公司 | 应用于微服务的数据处理方法、装置、设备和存储介质 |
CN113691635A (zh) * | 2021-09-01 | 2021-11-23 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN113742714A (zh) * | 2021-07-28 | 2021-12-03 | 深圳兆日科技股份有限公司 | 微服务间访问管理方法、设备、装置及存储介质 |
CN114301970A (zh) * | 2021-12-21 | 2022-04-08 | 北京达佳互联信息技术有限公司 | 服务调用方法、装置、电子设备及存储介质 |
CN114401098A (zh) * | 2021-12-28 | 2022-04-26 | 智昌科技集团股份有限公司 | 一种快速构建微服务的应用系统及方法 |
CN114448786A (zh) * | 2021-12-27 | 2022-05-06 | 天翼云科技有限公司 | 一种网关配置处理方法、装置、系统及计算机设备 |
CN114448786B (zh) * | 2021-12-27 | 2024-06-07 | 天翼云科技有限公司 | 一种网关配置处理方法、装置、系统及计算机设备 |
-
2020
- 2020-06-30 CN CN202010615146.2A patent/CN111767095A/zh active Pending
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112217731A (zh) * | 2020-10-16 | 2021-01-12 | 青岛海尔科技有限公司 | 目标应用的生成方法及装置、存储介质 |
CN112416321A (zh) * | 2020-11-18 | 2021-02-26 | 青岛海尔科技有限公司 | 应用生成方法、装置和存储介质及电子装置 |
CN112416321B (zh) * | 2020-11-18 | 2023-06-16 | 青岛海尔科技有限公司 | 应用生成方法、装置和存储介质及电子装置 |
CN112364338A (zh) * | 2020-11-30 | 2021-02-12 | 杭州安恒信息技术股份有限公司 | 一种微服务框架的管理方法、装置、电子装置和存储介质 |
CN112364338B (zh) * | 2020-11-30 | 2024-04-09 | 杭州安恒信息技术股份有限公司 | 一种微服务框架的管理方法、装置、电子装置和存储介质 |
CN112311902A (zh) * | 2020-12-23 | 2021-02-02 | 深圳市蓝凌软件股份有限公司 | 基于微服务的文件发送方法及装置 |
CN112738060A (zh) * | 2020-12-24 | 2021-04-30 | 平安科技(深圳)有限公司 | 微服务数据的处理方法、装置、微服务处理平台及介质 |
CN112929358B (zh) * | 2021-01-29 | 2022-12-30 | 中国工商银行股份有限公司 | 用于微服务编排的方法和装置、电子设备、及介质 |
CN112929358A (zh) * | 2021-01-29 | 2021-06-08 | 中国工商银行股份有限公司 | 用于微服务编排的方法和装置、电子设备、及介质 |
CN113312037A (zh) * | 2021-06-15 | 2021-08-27 | 北京百度网讯科技有限公司 | 应用于微服务的数据处理方法、装置、设备和存储介质 |
CN113312037B (zh) * | 2021-06-15 | 2023-11-24 | 北京百度网讯科技有限公司 | 应用于微服务的数据处理方法、装置、设备和存储介质 |
CN113742714A (zh) * | 2021-07-28 | 2021-12-03 | 深圳兆日科技股份有限公司 | 微服务间访问管理方法、设备、装置及存储介质 |
CN113691635B (zh) * | 2021-09-01 | 2022-08-19 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN113691635A (zh) * | 2021-09-01 | 2021-11-23 | 中电金信软件有限公司 | 调用微服务的方法、装置、电子设备和可读存储介质 |
CN114301970B (zh) * | 2021-12-21 | 2023-10-17 | 北京达佳互联信息技术有限公司 | 服务调用方法、装置、电子设备及存储介质 |
CN114301970A (zh) * | 2021-12-21 | 2022-04-08 | 北京达佳互联信息技术有限公司 | 服务调用方法、装置、电子设备及存储介质 |
CN114448786A (zh) * | 2021-12-27 | 2022-05-06 | 天翼云科技有限公司 | 一种网关配置处理方法、装置、系统及计算机设备 |
CN114448786B (zh) * | 2021-12-27 | 2024-06-07 | 天翼云科技有限公司 | 一种网关配置处理方法、装置、系统及计算机设备 |
CN114401098A (zh) * | 2021-12-28 | 2022-04-26 | 智昌科技集团股份有限公司 | 一种快速构建微服务的应用系统及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111767095A (zh) | 微服务生成方法、装置、终端设备及存储介质 | |
US10348718B2 (en) | Sharing credentials and other secret data in collaborative environment in a secure manner | |
US8332922B2 (en) | Transferable restricted security tokens | |
CN109670297B (zh) | 业务权限的开通方法、装置、存储介质及电子设备 | |
US10911426B2 (en) | Custom authenticator for enterprise web application | |
CN108449187B (zh) | 一种令牌刷新的方法及装置 | |
US10908971B1 (en) | Method and system for generating a customizable connector | |
JP2017033339A (ja) | サービス提供システム、情報処理装置、プログラム及びサービス利用情報作成方法 | |
US11063922B2 (en) | Virtual content repository | |
US20190347638A1 (en) | Updating account data for multiple account providers | |
US20230308290A1 (en) | Data sharing method and electronic device | |
US10599755B2 (en) | System and method for automatically inserting correct escaping functions for field references in a multi-tenant computing environment | |
CN112437078A (zh) | 文件存储方法、装置、设备及计算机可读存储介质 | |
CN108255967B (zh) | 存储过程的调用方法、装置、存储介质及终端 | |
US10866711B1 (en) | Providing account information to applications | |
CN116244682A (zh) | 数据库的访问方法、装置、设备以及存储介质 | |
US11501258B1 (en) | Systems and methods for mediating job applications between user devices and application tracking systems | |
CN111143399B (zh) | 数据处理方法、装置、存储介质和计算机设备 | |
AU2020341341B2 (en) | System and method for implementing market data rights enforcement | |
US11271738B1 (en) | Secure, reliable, and decentralized communication in cloud platform | |
US11790057B2 (en) | Controlling program execution using an access key | |
US9043880B1 (en) | Directory service user exportation system | |
CN116305213A (zh) | 实现第三方系统安全对接的方法及对接平台 | |
Costa | Development of Modules for an Academic Intranet Platform | |
CN117933201A (zh) | 文档编辑方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20210129 Address after: 518000 Room 201, building A, No. 1, Qian Wan Road, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong (Shenzhen Qianhai business secretary Co., Ltd.) Applicant after: Shenzhen saiante Technology Service Co.,Ltd. Address before: 1-34 / F, Qianhai free trade building, 3048 Xinghai Avenue, Mawan, Qianhai Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong 518000 Applicant before: Ping An International Smart City Technology Co.,Ltd. |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |