实现多业务模块相互调用的方法、装置、电子设备和存储介质制造方法及图纸

技术编号:23399634 阅读:23 留言:0更新日期:2020-02-22 11:57
本申请公开了实现多业务模块相互调用的方法、装置、电子设备及存储介质,所述方法包括:应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,每个所述服务包括服务名称和调用信息;建立每个所述服务的所述服务名称与所述调用信息的映射关系;当接收到第一业务模块传输的目标服务名称时,从映射关系中查找所述目标服务名称对应的调用信息,最后根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。本申请方法无需在第一业务模块中引入所调用服务的头文件等代码,进而有利于维护业务模块中的代码,降低代码耦合度。

Methods, devices, electronic devices and storage media for mutual calling of multi service modules

【技术实现步骤摘要】
实现多业务模块相互调用的方法、装置、电子设备和存储介质
本申请涉及应用程序开发
,尤其涉及一种实现多业务模块相互调用的方法、装置、电子设备及存储介质。
技术介绍
随着移动终端业务的拓展与丰富,面向终端的应用程序的功能也越来越丰富。应用程序的功能依赖于组成该应用程序的各业务模块,所述业务模块如“首页”、“发现”、“消息”和“个人中心”等等。如果一个应用程序中的业务模块较多,则多个业务模块之间必然存在错综复杂的交互,例如,某一业务模块调用其他业务模块中的方法或者跳转到其他业务模块的页面。一种可实现多业务模块交互的方案中,为使某一业务模块能够调用另一业务模块内部的方法,或者实现从该业务模块页面跳转到另一业务模块的页面,需要在该业务模块代码中引入所要调用方法或所要跳转页面代码的头文件,才能够完成调用或跳转。图1为多业务模块间交互场景示意图,从图1可以看出,A、B、C、D四个模块间的调用及跳转逻辑错综复杂,涉及的业务场景众多,例如,可能涉及从页面A1跳转到页面B2后,由B模块调用D中的方法D3,还可能涉及由页面A2跳转到页面B3后,再从页面B3跳转到页面C1,再由C模块调用B中的方法B4,等等。基于上述方案,由于对于每一模块而言,均可能涉及与其余各模块的交互,因此若在每个模块中都引入其余各模块中可调用方法或者可跳转页面的头文件,将导致模块中代码可维护性差、耦合度高等诸多问题。
技术实现思路
本申请提供一种实现多业务模块相互调用的方法、装置、电子设备及存储介质,以解决现有技术中,在每个模块中都引入其余各模块中可调用方法或者可跳转页面的头文件,所导致的模块中代码可维护性差、耦合度高等诸多问题。第一方面,本申请提供一种实现多业务模块相互调用的方法,所述方法包括:应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,每个所述服务包括服务名称和调用信息;建立每个所述服务的所述服务名称与所述调用信息的映射关系;当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。进一步,所述预置配置信息中至少包括各业务模块预置中所述配置文件的文件标识,一个所述文件标识对应一个业务模块;所述根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,包括:遍历所述配置信息中的文件标识,根据所述文件标识在相应的业务模块中查找配置文件;读取查找到的所述配置文件中包括的服务。进一步,所述建立每个服务的服务名称与调用信息的映射关系,包括:以所述服务名称为KEY值,以所述调用信息为VALUE值,建立所述服务名称与所述调用信息的映射关系,所述调用信息包括所述服务对应方法的类名和协议名。进一步,所述方法还包括:在接收第一业务模块传输的目标服务名称的同时,接收所述第一业务模块传输的目标服务参数;对所述目标服务名称和所述目标服务参数进行校验;当对所述目标服务名称和所述目标服务参数校验成功时,执行查找调用信息及调用目标服务的步骤。第二方面,本申请还提供一种实现应用程序业务模块热插拔的方法,所述方法包括:对于每个业务模块,生成包括所述业务模块对外暴露的多个服务的配置文件,并保存在所述业务模块中,每个所述服务包括服务名称和调用信息;配置独立于每个所述业务模块的服务模块,并在所述服务模块中预置用于读取各业务模块的配置文件的配置信息;其中,所述服务模块被配置为执行以下步骤:应用程序启动时,根据所述配置信息从各业务模块的配置文件中读取所述业务模块对外暴露的多个服务;建立每个所述服务的服务名称与调用信息的映射关系;当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。进一步,每个所述业务模块的所述配置文件具有一个文件标识;所述在服务模块中预置用于读取各业务模块的配置文件的配置信息,包括:根据每个业务模块的配置文件所具有的文件标识,以及所述文件标识和所述业务模块的对应关系,生成所述配置信息并保存在所述服务模块中。进一步,所述服务模块还被配置为执行以下步骤:在接收第一业务模块传输的目标服务名称的同时,接收所述第一业务模块传输的目标服务参数;对所述目标服务名称和所述目标服务参数进行校验;当对所述目标服务名称和所述目标服务参数校验成功时,执行查找调用信息及调用目标服务的步骤。第三方面,本申请还提供一种实现多业务模块相互调用的装置,所述装置包括:读取单元,用于在应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,每个所述服务包括服务名称和调用信息;建立单元,用于建立每个所述服务的所述服务名称与所述调用信息的映射关系;查找单元,用于当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;调用单元,用于根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。进一步,所述预置配置信息中至少包括各业务模块预置中所述配置文件的文件标识,一个所述文件标识对应一个业务模块;所述读取单元包括:遍历查找子单元,用于遍历所述文件标识,根据所述文件标识在相应的业务模块中查找配置文件;读取子单元,用于读取所述配置文件中包括的服务。进一步,所述建立单元,具体用于以所述服务名称为KEY值,以所述调用信息为VALUE值,建立所述服务名称与所述调用信息的映射关系,所述调用信息包括所述服务对应方法的类名和协议名。进一步,所述装置还包括:接收单元,用于在接收第一业务模块传输的目标服务名称的同时,接收所述第一业务模块传输的目标服务参数;校验单元,用于对所述目标服务名称和所述目标服务参数进行校验。第四方面,本申请还提供一种实现应用程序业务模块热插拔的装置,其特征在于,所述装置包括:生成模块,用于对于每个业务模块,生成包括所述业务模块对外暴露的多个服务的配置文件,并保存在所述业务模块中,每个所述服务包括服务名称和调用信息;配置模块,用于配置独立于每个所述业务模块的服务模块,并在所述服务模块中预置用于读取各业务模块的配置文件的配置信息;其中,所述配置模块将所述服务模块被配置为执行以下步骤:应用程序启动时,根据所述配置信息从各业务模块的配置文件中读取所述业务模块对外暴露的多个服务;建立每个所述服务的服务名称与调用信息的映射关系;当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;根据查找到的调用信息调用目标服务,所述目标本文档来自技高网...

【技术保护点】
1.一种实现多业务模块相互调用的方法,其特征在于,所述方法包括:/n应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,每个所述服务包括服务名称和调用信息;/n建立每个所述服务的所述服务名称与所述调用信息的映射关系;/n当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;/n根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。/n

【技术特征摘要】
1.一种实现多业务模块相互调用的方法,其特征在于,所述方法包括:
应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,每个所述服务包括服务名称和调用信息;
建立每个所述服务的所述服务名称与所述调用信息的映射关系;
当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;
根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。


2.根据权利要求1所述的方法,其特征在于,所述预置配置信息中至少包括各业务模块预置中所述配置文件的文件标识,一个所述文件标识对应一个业务模块;
所述根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对外暴露的多个服务,包括:
遍历所述配置信息中的文件标识,根据所述文件标识在相应的业务模块中查找配置文件;
读取查找到的所述配置文件中包括的服务。


3.根据权利要求2所述的方法,其特征在于,所述建立每个服务的服务名称与调用信息的映射关系,包括:
以所述服务名称为KEY值,以所述调用信息为VALUE值,建立所述服务名称与所述调用信息的映射关系,所述调用信息包括所述服务对应方法的类名和协议名。


4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在接收第一业务模块传输的目标服务名称的同时,接收所述第一业务模块传输的目标服务参数;
对所述目标服务名称和所述目标服务参数进行校验;
当对所述目标服务名称和所述目标服务参数校验成功时,执行查找调用信息及调用目标服务的步骤。


5.一种实现应用程序业务模块热插拔的方法,其特征在于,所述方法包括:
对于每个业务模块,生成包括所述业务模块对外暴露的多个服务的配置文件,并保存在所述业务模块中,每个所述服务包括服务名称和调用信息;
配置独立于每个所述业务模块的服务模块,并在所述服务模块中预置用于读取各业务模块的配置文件的配置信息;
其中,所述服务模块被配置为执行以下步骤:
应用程序启动时,根据所述配置信息从各业务模块的配置文件中读取所述业务模块对外暴露的多个服务;
建立每个所述服务的服务名称与调用信息的映射关系;
当接收到第一业务模块传输的目标服务名称时,从所述映射关系中查找所述目标服务名称对应的调用信息;
根据查找到的调用信息调用目标服务,所述目标服务属于第二业务模块对外暴露的服务。


6.根据权利要求5所述的方法,其特征在于,每个所述业务模块的所述配置文件具有一个文件标识;
所述在服务模块中预置用于读取各业务模块的配置文件的配置信息,包括:
根据每个业务模块的配置文件所具有的文件标识,以及所述文件标识和所述业务模块的对应关系,生成所述配置信息并保存在所述服务模块中。


7.根据权利要求5所述的方法,其特征在于,所述服务模块还被配置为执行以下步骤:
在接收第一业务模块传输的目标服务名称的同时,接收所述第一业务模块传输的目标服务参数;
对所述目标服务名称和所述目标服务参数进行校验;
当对所述目标服务名称和所述目标服务参数校验成功时,执行查找调用信息及调用目标服务的步骤。


8.一种实现多业务模块相互调用的装置,其特征在于,所述装置包括:
读取单元,用于在应用程序启动时,根据预置配置信息从各业务模块预置的配置文件中读取所述业务模块对...

【专利技术属性】
技术研发人员:贺亚龙吕庆春彭飞
申请(专利权)人:五八有限公司
类型:发明
国别省市:天津;12

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1