CN114637531A - 应用程序接口动态生成方法及装置 - Google Patents

应用程序接口动态生成方法及装置 Download PDF

Info

Publication number
CN114637531A
CN114637531A CN202210313140.9A CN202210313140A CN114637531A CN 114637531 A CN114637531 A CN 114637531A CN 202210313140 A CN202210313140 A CN 202210313140A CN 114637531 A CN114637531 A CN 114637531A
Authority
CN
China
Prior art keywords
interface
definition
bytecode
generating
configuration message
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
CN202210313140.9A
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.)
Bank of China Ltd
Original Assignee
Bank of China 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 Bank of China Ltd filed Critical Bank of China Ltd
Priority to CN202210313140.9A priority Critical patent/CN114637531A/zh
Publication of CN114637531A publication Critical patent/CN114637531A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/48Incremental compilation

Landscapes

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

Abstract

本申请实施例提供一种应用程序接口动态生成方法及装置,可用于金融领域,方法包括:接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口;对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义;将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例;本申请能够灵活、便捷得实现应用程序接口的动态开发部署。

Description

应用程序接口动态生成方法及装置
技术领域
本申请涉及数据处理领域,也可用于金融领域,具体涉及一种应用程序接口动态生成方法及装置。
背景技术
随着互联网、移动互联网的快速发展,业务需求的实现周期越来越短,应用***提供的API作为***最终暴露的能力接口同样需要满足快速上线的要求。
同时,***API开发往往并不包含丰富的业务逻辑(这部分通常由业务层实现),因此越来越多的开发者希望能够实现API的轻量开发和实现。此外,在***的迭代演化过程中,新增API和修改API的生效需要通过停止应用来进行维护,成本较高。
在应用***API的开发过程中,开发者通常需要基于接口定义、通信协议以及接口规范等要求,进行源代码的开发,并进行编译、构建等环节,将所开发的API接口集成到当前的***中,最终通过替换最新的执行码并重启应用来完成相应API的生成。整个过程是按照传统的应用开发的方式进行的,存在效率低、成本高、灵活性差等问题。
发明内容
针对现有技术中的问题,本申请提供一种应用程序接口动态生成方法及装置,能够灵活、便捷得实现应用程序接口的动态开发部署。
为了解决上述问题中的至少一个,本申请提供以下技术方案:
第一方面,本申请提供一种应用程序接口动态生成方法,包括:
接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口;
对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义;
将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
进一步地,在所述对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义之前,包括:
对接收到的接口配置报文进行报文格式校验和数据格式转换;
将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
进一步地,所述对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义,包括:
对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种;
根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
进一步地,在所述将所述字节码定义发送至目标应用之后,包括:
所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
第二方面,本申请提供一种应用程序接口动态生成装置,包括:
报文接收模块,用于接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口;
字节码生成模块,用于对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义;
字节码转换模块,用于将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
进一步地,还包括:
校验和转换单元,用于对接收到的接口配置报文进行报文格式校验和数据格式转换;
持久化存储单元,用于将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
进一步地,所述字节码生成模块包括:
报文解析单元,用于对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种;
字节码生成单元,用于根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
进一步地,所述字节码转换模块包括:
实例代码生成单元,用于所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
第三方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的应用程序接口动态生成方法的步骤。
第四方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的应用程序接口动态生成方法的步骤。
第五方面,本申请提供一种计算机程序产品,包括计算机程序/指令,该计算机程序/指令被处理器执行时实现所述的应用程序接口动态生成方法的步骤。
由上述技术方案可知,本申请提供一种应用程序接口动态生成方法及装置,通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中的应用程序接口动态生成方法的流程示意图之一;
图2为本申请实施例中的应用程序接口动态生成方法的流程示意图之二;
图3为本申请实施例中的应用程序接口动态生成方法的流程示意图之三;
图4为本申请实施例中的应用程序接口动态生成装置的结构图之一;
图5为本申请实施例中的应用程序接口动态生成装置的结构图之二;
图6为本申请实施例中的应用程序接口动态生成装置的结构图之三;
图7为本申请实施例中的应用程序接口动态生成装置的结构图之四;
图8为本申请一具体实施例中的应用程序接口动态生成***的示意图;
图9为本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
考虑到现有技术中API的开发过程中,开发者通常需要基于接口定义、通信协议以及接口规范等要求,进行源代码的开发,并进行编译、构建等环节,将所开发的API接口集成到当前的***中,最终通过替换最新的执行码并重启应用来完成相应API的生成。整个过程是按照传统的应用开发的方式进行的,存在效率低、成本高、灵活性差的问题,本申请提供一种应用程序接口动态生成方法及装置,通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
为了能够灵活、便捷得实现应用程序接口的动态开发部署,本申请提供一种应用程序接口动态生成方法的实施例,参见图1,所述应用程序接口动态生成方法具体包含有如下内容:
步骤S101:接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口。
可选的,本申请可以接收用户(例如接口研发人员)发送的接口配置报文,该接口配置报文包含有用户选定的待生成接口,其中,本申请可以通过接口展示界面或接口库向用户提供多种可生成接口进行选择。
步骤S102:对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义。
可选的,本申请可以对接收到的接口配置报文进行报文解析,并对解析后的数据进行报文格式校验以及格式转换操作,得到符合设定数据格式的报文数据并进行本地持久化存储。
可选的,经过解析后的报文数据本申请可以按照一设定的接口定义规则生成对应的字节码定义,其中,所述字节码定义是指Java字节码,是Java虚拟机执行的一种虚拟指令格式。
举例来说,对于一个员工管理应用,需要定义一个接口,该接口实现通过员工编号和公司编号查询员工的详细信息,则该接口定义的json报文如下:
Figure BDA0003569092570000051
Figure BDA0003569092570000061
Figure BDA0003569092570000071
上述接口定义遵循的接口定义规则如上述json报文所示,主要包括:
1.接口定义主要包括API接口名称apiName、API接口协议apiProtocol、API接口报文头apiHeader、API接口请求报文体apiReqBody、API接口返回报文体apiRespBody几个部分。
2.其中API接口报文头apiHeader、API接口请求报文体apiReqBody、API接口返回报文体apiRespBody为数组类型,列出了各个域中相应的字段信息。
3.API接口报文头apiHeader、API接口请求报文体apiReqBody、API接口返回报文体apiRespBody中的字段信息主要包括字段名称name,字段类型type,字段校验规则rule三类。
4.其中字段名称name其值标识相应域中字段的名称;字段类型type其值标识相应域中字段的类型,类型包括字符型String,整型INT等等;字段校验规则rule其值为相应域中字段的业务限制规则表达,包括字段是否可为控制,限制的数字范围等。
根据该接口定义生成的接口定义字节码如下:
Figure BDA0003569092570000072
Figure BDA0003569092570000081
Figure BDA0003569092570000082
Figure BDA0003569092570000091
Figure BDA0003569092570000092
Figure BDA0003569092570000101
Figure BDA0003569092570000111
Figure BDA0003569092570000121
步骤S103:将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
可选的,在生成字节码定义后本申请可以将其发送至目标应用端,
从上述描述可知,本申请实施例提供的应用程序接口动态生成方法,能够通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
为了能够保障字节码定义生成的准确性,在本申请的应用程序接口动态生成方法的一实施例中,参见图2,在上述步骤S102之前,还可以具体包含如下内容:
步骤S201:对接收到的接口配置报文进行报文格式校验和数据格式转换。
步骤S202:将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
可选的,本申请可以对接收到的接口配置报文进行报文解析,并对解析后的数据进行报文格式校验以及格式转换操作,得到符合设定数据格式的报文数据并进行本地持久化存储。
为了能够准确生成字节码定义,在本申请的应用程序接口动态生成方法的一实施例中,参见图3,上述步骤S102还可以具体包含如下内容:
步骤S301:对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种。
步骤S302:根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
可选的,本申请可以对接收到的接口配置报文进行报文解析,从解析结果中提取出生成字节码定义所需的字节码生成参数,例如接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种,提取过程可以通过特定字符标识进行识别。
可选的,根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
为了能够使目标应用准确解析字节码定义,在本申请的应用程序接口动态生成方法的一实施例中,在上述步骤S103之后,还可以具体包含如下内容:
所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
可选的,所述目标应用端可以预先集成有软件开发包SDK,也可以通过现有技术实现对接收到的字节码定义的数据解析操作。
可选的,所述目标应用端根据解析结果结合自身JAVA虚拟机运行环境,可以生成对应的接口实例,即接口代码,举例来说:对于一个员工管理应用,需要定义一个接口,该接口实现通过员工编号和公司编号查询员工的详细信息,该接口定义及按照接口定义报文生产的接口定义字节码如步骤S102示例所述。
目标应用端在接收到该接口的字节码定义后,进行解析,生成相应的接口代码,包括三个Java类,如下:
Figure BDA0003569092570000141
Figure BDA0003569092570000142
Figure BDA0003569092570000151
Figure BDA0003569092570000161
Figure BDA0003569092570000171
为了能够灵活、便捷得实现应用程序接口的动态开发部署,本申请提供一种用于实现所述应用程序接口动态生成方法的全部或部分内容的应用程序接口动态生成装置的实施例,参见图4,所述应用程序接口动态生成装置具体包含有如下内容:
报文接收模块10,用于接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口。
字节码生成模块20,用于对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义。
字节码转换模块30,用于将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
从上述描述可知,本申请实施例提供的应用程序接口动态生成装置,能够通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
为了能够保障字节码定义生成的准确性,在本申请的应用程序接口动态生成装置的一实施例中,参见图5,还具体包含有如下内容:
校验和转换单元41,用于对接收到的接口配置报文进行报文格式校验和数据格式转换。
持久化存储单元42,用于将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
为了能够准确生成字节码定义,在本申请的应用程序接口动态生成装置的一实施例中,参见图6,所述字节码生成模块20包括:
报文解析单元21,用于对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种。
字节码生成单元22,用于根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
为了能够使目标应用准确解析字节码定义,在本申请的应用程序接口动态生成装置的一实施例中,参见图7,所述字节码转换模块30包括:
实例代码生成单元31,用于所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
为了更进一步说明本方案,本申请还提供一种应用上述应用程序接口动态生成装置实现应用程序接口动态生成方法的具体应用实例,参见图8,具体包含有如下内容:API配置展示程序、API动态配置程序、API动态解析SDK等部分,各部分的作用及组成如下:
1.API配置展示程序,负责向API开发者提供可视化、配置化开发应用API的界面,开发者可以通过该界面通过选择、配置的方式,完成应用API的开发。
2.API动态配置程序,负责接收API配置展示程序发送的报文,基于接收到的报文解析生成字节码并发送应用***。该程序本身包括API配置子程序、API配置持久化子程序、API配置解析子程序、API字节码生成子程序、通信子程序等部分构成。
2.1.API配置子程序,负责接收API配置展示程序发送的报文,并进行报文格式校验、转换,并将转换后的报文分别传递给API配置持久化子程序和API配置解析子程序。
2.2.API配置持久化子程序,负责将接收到的报文按照既定的格式进行持久化存储。
2.3.API配置解析子程序,负责将接收到的报文进行解析,获取生成字节码所需要的信息,如API输入参数、API输出参数、API控制逻辑、API执行逻辑等。
2.4.API字节码生成子程序,负责按照API配置解析子程序生成的结果,根据API定义动态生成相应的字节码。
2.5.通信子程序,负责将API字节码生成子程序生成的动态字节码定义发送至应用***。
3.API动态解析SDK,负责接收API动态配置程序,进行解析并生成API运行期实例,主要包括通信子程序和API字节码解析子程序。
3.1.SDK通信子程序,负责接收API动态配置程序发送的API字节码定义,并将字节码定义传递给API字节码解析子程序
3.2.API字节码解析子程序,负责对API字节码定义进行解析,并基于应用***的运行Java虚拟机环境,生成相应的API实例。
有上述内容可知,本申请通过提供给开发者可视化配置化的界面程序,并将开发者配置生成的接口定义动态解析生成字节码,并在应用***运行期动态生效。降低了API开发的周期和成本,能够适应多样化的API的开发需求,具有较高的灵活度。
从硬件层面来说,为了能够灵活、便捷得实现应用程序接口的动态开发部署,本申请提供一种用于实现所述应用程序接口动态生成方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
处理器(processor)、存储器(memory)、通信接口(Communications Interface)和总线;其中,所述处理器、存储器、通信接口通过所述总线完成相互间的通信;所述通信接口用于实现应用程序接口动态生成装置与核心业务***、用户终端以及相关数据库等相关设备之间的信息传输;该逻辑控制器可以是台式计算机、平板电脑及移动终端等,本实施例不限于此。在本实施例中,该逻辑控制器可以参照实施例中的应用程序接口动态生成方法的实施例,以及应用程序接口动态生成装置的实施例进行实施,其内容被合并于此,重复之处不再赘述。
可以理解的是,所述用户终端可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备、智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表、智能手环等。
在实际应用中,应用程序接口动态生成方法的部分可以在如上述内容所述的电子设备侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
图9为本申请实施例的电子设备9600的***构成的示意框图。如图9所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图9是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
一实施例中,应用程序接口动态生成方法功能可以被集成到中央处理器9100中。其中,中央处理器9100可以被配置为进行如下控制:
步骤S101:接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口。
步骤S102:对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义。
步骤S103:将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
从上述描述可知,本申请实施例提供的电子设备,通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
在另一个实施方式中,应用程序接口动态生成装置可以与中央处理器9100分开配置,例如可以将应用程序接口动态生成装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现应用程序接口动态生成方法功能。
如图9所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图9中所示的所有部件;此外,电子设备9600还可以包括图9中没有示出的部件,可以参考现有技术。
如图9所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的应用程序接口动态生成方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的应用程序接口动态生成方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
步骤S101:接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口。
步骤S102:对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义。
步骤S103:将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
从上述描述可知,本申请实施例提供的计算机可读存储介质,通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
本申请的实施例还提供能够实现上述实施例中的执行主体为服务器或客户端的应用程序接口动态生成方法中全部步骤的一种计算机程序产品,该计算机程序/指令被处理器执行时实现所述的应用程序接口动态生成方法的步骤,例如,所述计算机程序/指令实现下述步骤:
步骤S101:接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口。
步骤S102:对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义。
步骤S103:将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
从上述描述可知,本申请实施例提供的计算机程序产品,通过将待生成接口预先转换为对应的字节码定义,并将该字节码定义发送至目标应用,以使目标应用对字节码定义进行解析后根据自身运行环境生成对应的接口代码实例,从而实现目标应用无需重启也能部署新增接口代码实例的效果,由此能够灵活、便捷得实现应用程序接口的动态开发部署。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (11)

1.一种应用程序接口动态生成方法,其特征在于,所述方法包括:
接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口;
对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义;
将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
2.根据权利要求1所述的应用程序接口动态生成方法,其特征在于,在所述对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义之前,包括:
对接收到的接口配置报文进行报文格式校验和数据格式转换;
将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
3.根据权利要求1所述的应用程序接口动态生成方法,其特征在于,所述对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义,包括:
对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种;
根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
4.根据权利要求1所述的应用程序接口动态生成方法,其特征在于,在所述将所述字节码定义发送至目标应用之后,包括:
所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
5.一种应用程序接口动态生成装置,其特征在于,包括:
报文接收模块,用于接收用户发送的接口配置报文,其中,所述接口配置报文包含有用户选定的待生成接口;
字节码生成模块,用于对所述接口配置报文进行解析并按照设定接口定义规则生成对应的字节码定义;
字节码转换模块,用于将所述字节码定义发送至目标应用,以使所述目标应用对所述字节码定义进行解析后根据自身运行环境生成对应的接口代码实例。
6.根据权利要求5所述的应用程序接口动态生成装置,其特征在于,还包括:
校验和转换单元,用于对接收到的接口配置报文进行报文格式校验和数据格式转换;
持久化存储单元,用于将经过所述报文格式校验和数据格式转换后的接口配置报文进行本地持久化存储。
7.根据权利要求5所述的应用程序接口动态生成装置,其特征在于,所述字节码生成模块包括:
报文解析单元,用于对所述接口配置报文进行解析,根据解析结果确定字节码生成参数,其中,所述字节码生成参数包括接口输入参数、接口输出参数、接口控制逻辑以及接口执行逻辑中的至少一种;
字节码生成单元,用于根据所述字节码生成参数和设定接口定义规则生成对应的字节码定义。
8.根据权利要求5所述的应用程序接口动态生成装置,其特征在于,所述字节码转换模块包括:
实例代码生成单元,用于所述目标应用通过本地集成的软件开发包对接收到的字节码定义进行解析,并根据解析结果和自身虚拟机运行环境生成对应的接口代码实例。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至4任一项所述的应用程序接口动态生成方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至4任一项所述的应用程序接口动态生成方法的步骤。
11.一种计算机程序产品,包括计算机程序/指令,其特征在于,该计算机程序/指令被处理器执行时实现权利要求1至4任一项所述的应用程序接口动态生成方法的步骤。
CN202210313140.9A 2022-03-28 2022-03-28 应用程序接口动态生成方法及装置 Pending CN114637531A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210313140.9A CN114637531A (zh) 2022-03-28 2022-03-28 应用程序接口动态生成方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210313140.9A CN114637531A (zh) 2022-03-28 2022-03-28 应用程序接口动态生成方法及装置

Publications (1)

Publication Number Publication Date
CN114637531A true CN114637531A (zh) 2022-06-17

Family

ID=81950413

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210313140.9A Pending CN114637531A (zh) 2022-03-28 2022-03-28 应用程序接口动态生成方法及装置

Country Status (1)

Country Link
CN (1) CN114637531A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314573A (zh) * 2022-08-05 2022-11-08 中国银行股份有限公司 一种报文体的动态加载方法及装置、电子设备、存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115314573A (zh) * 2022-08-05 2022-11-08 中国银行股份有限公司 一种报文体的动态加载方法及装置、电子设备、存储介质
CN115314573B (zh) * 2022-08-05 2024-02-23 中国银行股份有限公司 一种报文体的动态加载方法及装置、电子设备、存储介质

Similar Documents

Publication Publication Date Title
CN114138372B (zh) 前端组件加载方法及装置
CN110297944B (zh) 分布式xml数据处理方法及***
CN112463634B (zh) 微服务架构下的软件测试方法及装置
CN113110829B (zh) 多ui组件库数据处理方法及装置
CN111679790A (zh) 远程软件开发存储空间分配方法及装置
CN111857658A (zh) 一种渲染动态组件的方法、装置、介质和电子设备
CN110781373A (zh) 榜单更新方法、装置、可读介质和电子设备
CN112394932A (zh) 浏览器网页自动换肤方法及装置
CN111464352A (zh) 调用链路数据处理方法及装置
CN112784112A (zh) 报文校验方法及装置
CN111369237A (zh) 一种数据处理方法、装置及计算机存储介质
CN114153856A (zh) 主机数据双写方法及装置
CN114637531A (zh) 应用程序接口动态生成方法及装置
CN113050985A (zh) 前端工程依赖自动注册方法及装置
CN110427260B (zh) 主机作业调度方法、装置及***
CN111752644A (zh) 接口模拟方法、装置、设备及存储介质
CN113791984B (zh) 接口自动化测试方法及装置
CN114968917A (zh) 一种文件数据快速导入方法及装置
CN112905464B (zh) 应用运行环境数据处理方法及装置
CN115328506A (zh) 应用程序包生成方法、加载方法、装置、介质及设备
CN110548285B (zh) 游戏通信控制方法及装置、介质及电子设备
CN112102058A (zh) 管会***参数配置方法及装置
CN112688863B (zh) 网关数据处理方法、装置及电子设备
CN112837678B (zh) 私有云识别训练方法和装置
CN113342330A (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