CN110673839B - 分布式工具配置化构建生成方法及系统 - Google Patents
分布式工具配置化构建生成方法及系统 Download PDFInfo
- Publication number
- CN110673839B CN110673839B CN201910854688.2A CN201910854688A CN110673839B CN 110673839 B CN110673839 B CN 110673839B CN 201910854688 A CN201910854688 A CN 201910854688A CN 110673839 B CN110673839 B CN 110673839B
- Authority
- CN
- China
- Prior art keywords
- service
- tool
- client
- metadata
- query
- 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.)
- Active
Links
- 238000010276 construction Methods 0.000 title claims abstract description 128
- 238000000034 method Methods 0.000 title claims abstract description 113
- 238000007726 management method Methods 0.000 claims abstract description 51
- 238000013523 data management Methods 0.000 claims abstract description 34
- 230000004044 response Effects 0.000 claims description 21
- 239000002131 composite material Substances 0.000 claims description 17
- 238000004891 communication Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 14
- 238000011161 development Methods 0.000 abstract description 24
- 230000008569 process Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 15
- 238000004458 analytical method Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 7
- 230000008901 benefit Effects 0.000 description 3
- 238000013500 data storage Methods 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- 238000012360 testing method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000007794 visualization technique Methods 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 235000012054 meals Nutrition 0.000 description 1
- 238000011022 operating instruction Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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
-
- 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
Abstract
本发明公开了一种分布式工具配置化构建生成方法及系统,其中,该方法包括:将各个业务系统的业务包以及业务包的元数据录入至标准数据管理子系统中;动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中;接收客户端发送的携带有工具配置信息的工具构建请求;根据工具构建请求,从服务管理子系统中查询工具配置信息对应的目标服务的元数据;根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。该方案实现了工具个性化定制,很好地满足了用户需求,而且每个工具可以动态实时发布,通过配置化和自动化省掉了前后端的开发时间,提高了工具开发效率。
Description
技术领域
本发明涉及计算机技术领域,具体涉及一种分布式工具配置化构建生成方法及系统。
背景技术
现有技术中,个人用户、客服用户或者管理用户在使用业务系统的过程中,经常会遇到许多需要解答的问题,例如优惠券核销失败、商品数据不同步等问题。为了便于用户找到问题的解答,可向用户提供业务查询工具,用户可通过业务查询工具进行查询,找到问题的解答。但是现有的业务查询工具所能解决的问题有限,无法很好地满足日益增加的用户需求,因此,就需要对用户需求进行收集,由工具开发人员根据收集到的用户需求进行工具开发。而工具开发会涉及到工具代码编写、测试、预发以及发布等流程,工具开发流程较为复杂,并且,工具开发人员需要针对每个业务场景都一一编写对应的工具代码,即使有些业务场景有着非常相近的编程模式,从而导致工具开发人员在工具代码编写过程中做了许多重复工作,耗时较长。
为了提高工具开发效率,现有技术中提供了一些项目构建工具,例如,申请公布号为CN109766092A的中国专利申请提供了一种基于Maven组件化构建应用的可视化方法及系统,在其背景技术中公开了:Maven是Apache组织中的一个开源项目,主要服务于基于Java平台的项目构建、依赖管理和项目信息管理,最大化地消除了构建的重复,抽象了一个完整的构建生命周期模型,它能使项目构建过程中的编译、测试、发布、文档自动化。
然而,利用现有的项目构建工具,仍然需要走传统的工具代码编写、测试、预发以及发布等流程,仍然存在着工具开发效率低、难以满足用户需求、工具修改困难等问题。
发明内容
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的分布式工具配置化构建生成方法及系统。
根据本发明的一个方面,提供了一种分布式工具配置化构建生成方法,该方法包括:
将各个业务系统的业务包以及业务包的元数据录入至标准数据管理子系统中;
动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中;
接收客户端发送的携带有工具配置信息的工具构建请求;
根据工具构建请求,从服务管理子系统中查询工具配置信息对应的目标服务的元数据;
根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。
进一步地,对业务包进行解析,得到各个服务的元数据进一步包括:
对业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱。
进一步地,对业务包中的类实体进行解析包括:
对类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,构造得到类核心树;
根据类核心树,确定各个字段对应的字段模型路径、字段类型和字段注释。
进一步地,在接收客户端发送的携带有工具配置信息的工具构建请求之前,该方法还包括:
根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端从工具构建初始页面中的服务选项中选择目标服务,生成工具配置信息。
进一步地,在接收客户端发送的携带有工具配置信息的工具构建请求之前,该方法还包括:
根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端利用工具构建初始页面中的服务搜索功能进行服务搜索;
接收客户端发送的携带有搜索关键字的服务搜索请求;
根据搜索关键字,从服务管理子系统中查询与搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至客户端,以供客户端从相匹配的服务列表中选择目标服务,生成工具配置信息。
进一步地,工具配置信息包括有:目标服务标识;根据工具构建请求,从服务管理子系统中查询工具配置信息对应的目标服务的元数据进一步包括:
从服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
进一步地,根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具进一步包括:
将目标服务添加至客户端对应的业务查询工具页面中;
根据目标服务的元数据,对业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;
按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成客户端对应的业务查询工具;其中,业务查询工具包括:至少一个服务工具。
进一步地,在根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具之后,该方法还包括:
将业务查询工具对应的业务查询工具页面发送至客户端;
接收客户端针对业务查询工具页面中指定服务工具发送的查询请求;
根据查询请求,调用指定服务工具对应的服务,得到结果数据,并将结果数据返回给客户端。
进一步地,在动态加载业务包之前,该方法还包括:
将各个业务系统的数据表以及数据表的元数据录入至标准数据管理子系统中。
根据本发明的另一方面,提供了一种分布式工具系统,该系统包括:标准数据管理子系统、服务管理子系统和工具构建子系统;其中,
标准数据管理子系统适于:对各个业务系统的业务包以及业务包的元数据进行录入;动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中;
工具构建子系统适于:接收客户端发送的携带有工具配置信息的工具构建请求;根据工具构建请求,从服务管理子系统中查询工具配置信息对应的目标服务的元数据;根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。
进一步地,标准数据管理子系统进一步适于:对业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱。
进一步地,标准数据管理子系统进一步适于:对类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,构造得到类核心树;根据类核心树,确定各个字段对应的字段模型路径、字段类型和字段注释。
进一步地,工具构建子系统进一步适于:根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端从工具构建初始页面中的服务选项中选择目标服务,生成工具配置信息。
进一步地,工具构建子系统进一步适于:
根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端利用工具构建初始页面中的服务搜索功能进行服务搜索;
接收客户端发送的携带有搜索关键字的服务搜索请求;
根据搜索关键字,从服务管理子系统中查询与搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至客户端,以供客户端从相匹配的服务列表中选择目标服务,生成工具配置信息。
进一步地,工具配置信息包括有:目标服务标识;工具构建子系统进一步适于:从服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
进一步地,工具构建子系统进一步适于:
将目标服务添加至客户端对应的业务查询工具页面中;
根据目标服务的元数据,对业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;
按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成客户端对应的业务查询工具;其中,业务查询工具包括:至少一个服务工具。
进一步地,该系统还包括:业务查询子系统;业务查询子系统适于:将业务查询工具对应的业务查询工具页面发送至客户端;接收客户端针对业务查询工具页面中指定服务工具发送的查询请求;根据查询请求,调用指定服务工具对应的服务,得到结果数据,并将结果数据返回给客户端。
进一步地,标准数据管理子系统进一步适于:对各个业务系统的数据表以及数据表的元数据进行录入。
根据本发明的又一方面,提供了一种计算设备,包括:处理器、存储器、通信接口和通信总线,处理器、存储器和通信接口通过通信总线完成相互间的通信;
存储器用于存放至少一可执行指令,可执行指令使处理器执行上述分布式工具配置化构建生成方法对应的操作。
根据本发明的再一方面,提供了一种计算机存储介质,存储介质中存储有至少一可执行指令,可执行指令使处理器执行如上述分布式工具配置化构建生成方法对应的操作。
根据本发明提供的技术方案,对各个业务系统的业务包以及所述业务包的元数据进行了录入,通过对业务包进行解析,能够方便地得到各个服务的元数据,为工具个性化定制提供了数据服务基础;根据客户端的工具构建请求,能够便捷地查询到对应服务的元数据,并对业务查询工具页面进行配置,快速地生成所述客户端对应的业务查询工具,不仅实现了工具个性化定制,工具可根据用户需求进行灵活修改,很好地满足了用户需求,而且每个工具可以动态实时发布,不需要和一个大应用一起发布,缩短了迭代时间,通过配置化和自动化省掉了前后端的开发时间,有效地节省了工具开发时间,提高了工具开发效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的分布式工具配置化构建生成方法的流程示意图;
图2示出了一种分布式工具配置化构建生成方法对应的领域模型示意图;
图3a示出了根据本发明另一实施例的分布式工具配置化构建生成方法的流程示意图;
图3b示出了一种分布式工具配置化构建生成方法的原理示意图;
图4示出了一种类核心树的结构示意图;
图5示出了一种分布式工具配置化构建生成方法的时序图;
图6示出了根据本发明实施例的分布式工具系统的结构框图;
图7示出了根据本发明实施例的一种计算设备的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的分布式工具配置化构建生成方法的流程示意图,如图1所示,该方法包括如下步骤:
步骤S101,将各个业务系统的业务包以及业务包的元数据录入至标准数据管理子系统中。
该方法可由分布式工具系统执行,分布式工具系统包括:标准数据管理子系统、服务管理子系统和工具构建子系统等子系统。其中,各个子系统均为分布式系统。
每个业务系统都会提供其对应的业务包,以便利用该业务包进行工具开发,业务包通常可为JAR包等,本领域技术人员还可选择其他格式的业务包,此处不做限定。为了能够实现业务查询工具的自动化生成,需要将各个业务系统的业务包以及业务包的元数据录入至标准数据管理子系统中,实现数据落库。其中,多个业务系统可包括但不限于:本地生活服务业务系统、购物业务系统、购物咨询业务系统、支付业务系统、音乐业务系统、打车业务系统、订餐业务系统等。业务包的元数据可包括:业务包名称、业务包标识、项目组织标识(GroupID)、项目标识(ArtifactID)、版本信息等数据。
步骤S102,动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中。
在标准数据管理子系统中动态加载业务包,将业务包加载至标准数据管理子系统的当前环境中,读取业务包和业务包对应的资源包,在标准数据管理子系统中,对业务包进行深度解析,解析到类实体、方法实体和字段等,具体地,对业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,通过解析处理,得到各个服务的元数据。其中,服务是方法实体中的一个子类型,主要是指可对外使用的方法实体。服务的元数据可包括:服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱等数据。
在解析得到各个服务的元数据之后,将各个服务的元数据录入至服务管理子系统中,由服务管理子系统对服务进行统一管理,实现对服务的元数据的数据落库。其中,通过解析得到的各个服务的元数据与业务系统对外提供的标准服务接口相对应,具有统一的业务含义。
步骤S103,接收客户端发送的携带有工具配置信息的工具构建请求。
在完成了业务包录入、业务包解析以及服务的元数据录入之后,工具构建子系统就可根据客户端的工具构建请求,为客户端自动地生成定制的业务查询工具。具体地,在步骤S103中,工具构建子系统接收客户端发送的携带有工具配置信息的工具构建请求,工具配置信息可包括有用户所选择的目标服务标识、用户自定义接口信息等,其中,多个目标服务标识可存储为目标服务列表形式。用户自定义接口信息可包括用户选择的字段、组合新增的字段等信息。若工具配置信息包括有用户自定义接口信息,那么工具构建子系统还需要将用户自定义接口信息录入至服务管理子系统中。
步骤S104,根据工具构建请求,从服务管理子系统中查询工具配置信息对应的目标服务的元数据。
工具构建子系统根据工具构建请求,从服务管理子系统中查询工具配置信息对应的服务的元数据,其中,目标服务是指查询到的工具配置信息对应的服务。
步骤S105,根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。
具体地,在查询到目标服务的元数据之后,工具构建子系统根据目标服务的元数据,对业务查询工具页面中所包括的服务、服务的输入信息和输出信息等进行配置,生成客户端对应的业务查询工具,那么客户端就可方便地利用该业务查询工具进行业务查询。
本实施例提供的分布式工具配置化构建生成方法,对各个业务系统的业务包以及业务包的元数据进行了录入,通过对业务包进行解析,能够方便地得到各个服务的元数据,为工具个性化定制提供了数据服务基础;根据客户端的工具构建请求,能够便捷地查询到对应服务的元数据,并对业务查询工具页面进行配置,快速地生成客户端对应的业务查询工具,不仅实现了工具个性化定制,使得工具可根据用户需求进行灵活修改,很好地满足了用户需求,而且每个工具可以动态实时发布,不需要和一个大应用一起发布,缩短了迭代时间,通过配置化和自动化省掉了前后端的开发时间,有效地节省了工具开发时间,提高了工具开发效率。
为了便于本领域技术人员理解本发明,下面对本发明提供的分布式工具配置化构建生成方法所涉及的概念进行说明。图2示出了一种分布式工具配置化构建生成方法对应的领域模型示意图,如图2所示,服务工具与业务包、数据表、标签实体、依赖关系实体、方法实体之间均是N对N的关系,在图2中用“N:N”表示,其中,N可为大于或等于1的整数;业务包与类实体之间、类实体与方法实体之间是1对N的关系,在图2中用“1:N”表示;方法实体与请求实体之间,方法实体与响应实体之间是1对1的关系,在图2中用“1:1”表示。
其中,业务包可为业务系统提供的JAR包;数据表为业务系统提供的离线ODPS表、实时Explorer表等;服务工具是指客户端侧的用户定制的查询工具,包含有请求响应定制信息,服务使用信息、描述信息等;标签实体是指服务工具的标签体系,当服务工具的数量很大时,可用于提升用户搜索服务工具时的准确度;类实体是从类的维度进行管理,包含类的解析,管理其成员、方法、解释等信息;方法实体是从方法的维度进行管理,提供业务需求和方法的映射关系;请求实体依赖于方法实体,从属于方法,有一定的原子性,可与其他请求和响应产生联系;响应实体依赖于方法实体,从属于方法,有一定的原子性,可与其他请求和响应产生联系;依赖关系实体是指不同方法之间请求和响应的关联关系,可用于构建方法的关联逻辑,以便产生更具深度和广度的服务工具。
图3a示出了根据本发明另一实施例的分布式工具配置化构建生成方法的流程示意图,如图3a所示,该方法包括如下步骤:
步骤S301,将各个业务系统的业务包、数据表、业务包的元数据以及数据表的元数据录入至标准数据管理子系统中。
该方法可由分布式工具系统执行,分布式工具系统包括:标准数据管理子系统、服务管理子系统、工具构建子系统和业务查询子系统等。其中,各个子系统均为分布式系统。
图3b示出了一种分布式工具配置化构建生成方法的原理示意图,本领域技术人员应该能够清楚、明确地了解图3b中所涉及的字段名称和内容,此处不作赘述。如图3b所示,将各个业务系统的业务包(在图3b中业务包具体为Jar包)、数据表、业务包的元数据以及数据表的元数据都录入至标准数据管理子系统中。具体地,业务包的元数据可包括:业务包名称、业务包标识、项目组织标识、项目标识、版本信息等数据,数据表的元数据包括:数据表名称、数据表标识、各个数据列的字段、类型和描述信息等数据。
步骤S302,动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中。
在标准数据管理子系统中,将业务包动态加载至标准数据管理子系统的当前环境中,读取业务包和业务包对应的资源包,对业务包进行深度解析。具体地,对业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务的元数据,其中,各个服务的元数据包括:各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱等数据。可利用NLP等解析方式进行解析。
如图3b所示,在解析得到各个服务的元数据之后,将各个服务的元数据录入至服务管理子系统中,由服务管理子系统对服务进行统一管理,实现对服务的元数据的数据落库。
在实际的业务系统中,类实体具有非常复杂的结构,在本发明中,可用基础模型(BasicType模型)、类模型(Class模型)、容器基本模型(Container_S模型或者PairContainer_S模型)、容器复合模型(Container_C模型)以及对容器复合模型(PairContainer_C模型)对类实体进行描述。在步骤S302中,对类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,根据解析结果,构造得到类核心树,类核心树可如图4所示;在构造得到类核心树之后,根据类核心树,可以确定各个字段对应的字段模型路径、字段类型和字段注释。其中,在字段模型路径中,可利用“.”或者“/”等分隔符进行分隔,本领域技术人员还可选择其他的分隔符,此处不做具体限定。
具体地,基础模型是指不需要再进一步解析的模型,例如,JAVA JDK提供的String或者Integer等底层基础模型,又如,time或者money等业务模型;基础模型是类核心树的叶子节点。类模型是指类实体的一个属性,实际上也是一个类,对于类实体中的类模型需要进行递归解析,直至解析成基础模型。容器基本模型为某个基础模型的列表,例如,List<Integer>,Map<String,String>等,可以利用容器基本模型进行前端展示优化。容器复合模型为线性容器(例如list、set、queue、stack等)和类的复合类型,例如,List<ItemInfo>;对容器复合模型中的内容进行解析时,首先需要将对应字段的字段类型标记为容器复合模型,而后在对其进行递归解析。对容器复合模型对应成对的变量,例如,Map<UserSession,Context>;由于Key-Value中的Key和Value均可能为类模型,所以对Key和Value都需要进行递归解析,当Key退化为一个基础模型时,如String,那么对容器复合模型的解析操作可简化为一个线下复合容器的操作。
服务的元数据中的服务关系图谱需要通过进一步处理得到。具体地,服务关系图谱可包括响应-响应关系和请求-响应关系。其中,响应-响应关系可对应于查询接口相对独立、需要将不同的结果数据直接聚合在一起的场景,例如,对业务系统1中的门店和业务系统2中的门店的聚合,在这种聚合场景下,可能会出现结果数据中包含有多个字段相同的情况,对于这种情况,可预先将字段与字段对应的字段注释进行关联,根据关联的字段注释来区分字段的含义。请求-响应关系可对应于查询接口有依赖关系、需要把关联的结果数据聚合在一起的场景,例如,查询接口A响应返回的结果数据中的字段需要作为查询接口B的请求输入。
对于服务管理子系统,为了防止出现因修改服务而导致出现服务工具不可用的情况,优选地,在服务管理子系统中可增加服务,但不允许修改已增加的服务,对于不再需要的服务可作失效处理。
步骤S303,根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将工具构建初始页面发送至客户端。
为了便于客户端进行工具定制操作,工具构建子系统根据各个服务的元数据,生成包含有多个服务选项的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端从工具构建初始页面中的服务选项中选择其所需要添加的目标服务,根据客户端所选择的目标服务,生成工具配置信息,进而生成携带有工具配置信息的工具构建请求。
在另一种可选的实施方式中,工具构建子系统可根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端利用工具构建初始页面中的服务搜索功能进行服务搜索,具体地,如图3b所示,客户端可在搜索框中输入服务标识、字段等搜索关键字,而后触发工具构建初始页面中的“搜索”虚拟按钮以进行服务搜索。接着工具构建子系统接收客户端发送的携带有搜索关键字的服务搜索请求,而后根据搜索关键字,从服务管理子系统中查询与搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至客户端,以供客户端从相匹配的服务列表中选择目标服务,生成工具配置信息,进而生成携带有工具配置信息的工具构建请求。客户端通过服务搜索功能可便捷地进行服务快速搜索,使得客户端侧的用户能够更为方便地查找其所需要添加的目标服务,有助于提高工具定制效率。
步骤S304,接收客户端发送的携带有工具配置信息的工具构建请求。
步骤S305,从服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
工具配置信息可包括有目标服务标识、用户自定义接口信息等,其中,用户自定义接口信息可包括用户选择的字段、组合新增的字段等信息。若工具配置信息包括有用户自定义接口信息,那么工具构建子系统还需要将用户自定义接口信息录入至服务管理子系统中,对于用户新增的字段,在服务管理子系统中,可通过正则表达式进行组合来生成新增的字段,也可以通过groovy脚本做扩展设计,还可以通过其他方式来生成新增的字段,此处不做限定。
工具构建子系统在接收到工具构建请求之后,工具构建子系统从服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
步骤S306,根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。
目标服务的数量可以为一个或多个,工具构建子系统将目标服务添加至客户端对应的业务查询工具页面中;根据目标服务的元数据,对业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成客户端对应的业务查询工具,如图3b所示。在本发明中,将根据配置后的服务在业务查询工具中所生成的子工具称为服务工具,服务工具与配置后的服务相对应,业务查询工具是所生成的服务工具的集合,业务查询工具包括至少一个服务工具。
可将目标服务的元数据的ID和目标服务依赖的业务包的元数据的ID存储至工具构建子系统中,以便对所生成的业务查询工具进行管理;另外,还可建立并存储服务和业务查询工具之间的映射表,对于业务查询工具所用到的服务不允许进行删除,以避免出现服务工具不可用的情况。
为了使得客户端侧的用户能够更为方便、快速地使用业务查询工具中各个服务工具,可在业务查询工具中为服务工具所露出的字段提供并展示其对应的字段注释,对于必需的字段进行标记。
步骤S307,将业务查询工具对应的业务查询工具页面发送至客户端。
在生成了业务查询工具之后,工具构建子系统将业务查询工具对应的业务查询工具页面发送至客户端,以供客户端展现并使用该业务查询工具页面。具体地,在客户端接收到了工具构建子系统发送的业务查询工具对应的业务查询工具页面,即可使用业务查询工具页面中的服务工具进行业务查询。
工具构建子系统可对服务接口的合法性进行检查,检查服务接口是否已在工具构建子系统中存在,若否,则需要对服务接口对应的业务包进行解析得到服务的元数据;工具构建子系统还可对入参的合法性以及用户的使用权限等进行检查,以确保输入内容合法,访问合法。
另外,工具构建子系统还可对已生成的业务查询工具进行更新处理,具体地,对业务查询工具依赖的方法、业务包的版本信息、命名等信息进行更新处理。
步骤S308,接收客户端针对业务查询工具页面中指定服务工具发送的查询请求。
业务查询子系统接收客户端针对业务查询工具页面中指定服务工具发送的查询请求。其中,查询请求中可包括:指定服务工具的服务的元数据的ID、查询关键字等信息。
步骤S309,根据查询请求,调用指定服务工具对应的服务,得到结果数据,并将结果数据返回给客户端。
业务查询子系统可根据查询请求中的指定服务工具的服务的元数据的ID等信息,从标准数据管理子系统中查询指定服务工具依赖的业务包,检查当前环境是否加载有指定服务工具依赖的业务包,若没有加载,则从本地进行加载;接着从该业务包中获取指定服务工具对应的方法以及请求、响应的元数据,调用时,匹配输入数据和元数据的相关字段,确认合法,并根据请求的元数据来填充查询的请求数据,执行方法泛化调用,通过泛化调用可对所有调用做归一化处理,因此仅需一个接口即可处理所有请求;然后调用指定服务工具对应的业务系统,由业务系统进行业务查询,接收业务系统返回的业务数据,将返回的业务数据和元数据字段进行比对,从返回的业务数据中提取需要的数据,将提取到的数据确定为结果数据,对结果数据进行标准化处理,可使用动态表格等组件进行数据呈现,以便客户端侧的用户查看数据。其中,标准化处理的实现效果是将具有多层级结构的数据进行一维线性化,即转为Key-Value的列表。
另外,所生成的业务查询工具可运行在云环境中,因此还需要保证数据存储的一致性、加载业务包及工具的一致性。具体地,对于数据存储的一致性保证,可通过分布式的标准数据管理子系统来保证,标准数据管理子系统中的任意一台服务器在接收到解析请求之后,需要做幂等判定,然后将解析结果落库,通过幂等判定可以有效地避免出现重复解析的情况。对于加载业务包及工具的一致性保证,可以采用各种加载策略,例如可通过开机加载过程和巡检过程来保证业务包的一致性。
在实际实现场景中,分布式工具系统中的各个子系统还可使用一个共用的数据库进行数据存储,数据库中存储有各个业务系统的业务包、数据表、业务包的元数据、数据表的元数据、解析得到的各个服务的元数据等数据。图5示出了一种分布式工具配置化构建生成方法的时序图,如图5所示,在业务包动态加载流程中,分布式工具系统可先从数据库中获取需要下载的业务包列表,根据业务包列表下载业务包,加载业务包;在此过程中,还可接收最新上传的业务包,业务包中可包含有方法列表。
在业务包管理流程中,分布式工具系统读取该业务包和该业务包对应的资源包,如果资源包不存在,则需要从Maven库中下载对应的二进制包和资源包。而后解压资源包,将业务包加载至当前环境中,添加业务包版本,对方法列表中的方法进行逐个解析,将解析得到的服务的元数据落库。其中,由于本发明采用的是分布式工具系统,为了保证数据存储的一致性,可在添加业务包版本的过程中以及解析方法的过程中做幂等判定,以避免出现重复处理的情况。
在工具构建流程中,客户端向分布式工具系统发送页面请求,页面请求可包括有页面ID。在分布式工具系统接收到页面请求后,生成工具构建初始页面,将工具构建初始页面对应的工具ID等工具基本信息落库,而后将工具构建初始页面返回给客户端,以便客户端在工具构建初始页面中构建工具。客户端向分布式工具系统发送携带有工具配置信息的工具构建请求,工具配置信息中可包括页面ID、用户所选择的目标服务标识,其中,多个目标服务标识可存储为目标服务列表形式。分布式工具系统根据工具构建请求查询对应的目标服务的元数据,根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具,并依据该业务查询工具的相关信息对数据库中存储的工具基本信息进行更新。另外,分布式工具系统将业务查询工具对应的业务查询工具页面发送至客户端,以供客户端展现并使用该业务查询工具页面。
在业务查询流程中,客户端向分布式工具系统发送针对业务查询工具页面中指定服务工具的查询请求,分布式工具系统从数据库中查询指定服务工具依赖的业务包,检查当前环境是否加载有指定服务工具依赖的业务包,若没有加载,则从本地进行加载;接着从该业务包中获取指定服务工具对应的方法以及请求、响应的元数据,根据请求的元数据来填充查询的请求数据,执行方法泛化调用;然后调用指定服务工具对应的业务系统,由业务系统进行业务查询,接收业务系统返回的业务数据,将返回的业务数据和元数据字段进行比对,从返回的业务数据中提取需要的数据,将提取到的数据确定为结果数据,对结果数据进行标准化处理,可使用动态表格等组件进行数据呈现,以便客户端侧的用户查看数据。
本实施例提供的分布式工具配置化构建生成方法,对各个业务系统的业务包以及业务包的元数据进行了录入,通过对业务包进行解析,能够方便地得到各个服务的元数据,为工具个性化定制提供了数据服务基础,该数据服务基础可高度复用,有效地减少了开发流程中大量重复的逻辑;用户可通过勾选、搜索等方式方便地选择其所需在业务查询工具中配置的服务工具,生成工具构建请求;并且,根据工具构建请求,能够便捷地查询到对应服务的元数据,并对业务查询工具页面进行配置,快速地生成对应的业务查询工具,不仅实现了工具个性化定制,使得工具可根据用户需求进行灵活修改,很好地满足了用户需求,而且还无需工具开发人员针对业务查询工具都进行工具代码编写,每个工具可以动态实时发布,不需要和一个大应用一起发布,缩短了迭代时间,通过配置化和自动化省掉了前后端的开发时间,有效地节省了工具开发时间,降低了工具开发的门槛,提高了工具开发效率。
图6示出了根据本发明实施例的分布式工具系统的结构框图,如图6所示,该系统包括:标准数据管理子系统610、服务管理子系统620和工具构建子系统630。
标准数据管理子系统610适于:对各个业务系统的业务包以及业务包的元数据进行录入;动态加载业务包,并对业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统620中。
工具构建子系统630适于:接收客户端发送的携带有工具配置信息的工具构建请求;根据工具构建请求,从服务管理子系统620中查询工具配置信息对应的目标服务的元数据;根据目标服务的元数据,对业务查询工具页面进行配置,生成客户端对应的业务查询工具。
可选地,标准数据管理子系统610进一步适于:对业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱。
可选地,标准数据管理子系统610进一步适于:对类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,构造得到类核心树;根据类核心树,确定各个字段对应的字段模型路径、字段类型和字段注释。
可选地,工具构建子系统630进一步适于:根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端从工具构建初始页面中的服务选项中选择目标服务,生成工具配置信息。
可选地,工具构建子系统630进一步适于:根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将工具构建初始页面发送至客户端,以供客户端利用工具构建初始页面中的服务搜索功能进行服务搜索;接收客户端发送的携带有搜索关键字的服务搜索请求;根据搜索关键字,从服务管理子系统中查询与搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至客户端,以供客户端从相匹配的服务列表中选择目标服务,生成工具配置信息。
可选地,工具配置信息包括有:目标服务标识;工具构建子系统630进一步适于:从服务管理子系统620中查询服务标识为目标服务标识的服务的元数据。
可选地,工具构建子系统630进一步适于:将目标服务添加至客户端对应的业务查询工具页面中;根据目标服务的元数据,对业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成客户端对应的业务查询工具;其中,业务查询工具包括:至少一个服务工具。
可选地,该系统还包括:业务查询子系统640;业务查询子系统640适于:将业务查询工具对应的业务查询工具页面发送至客户端;接收客户端针对业务查询工具页面中指定服务工具发送的查询请求;根据查询请求,调用指定服务工具对应的服务,得到结果数据,并将结果数据返回给客户端。
可选地,标准数据管理子系统610进一步适于:对各个业务系统的数据表以及数据表的元数据进行录入。
本实施例提供的分布式工具系统,对各个业务系统的业务包以及业务包的元数据进行了录入,通过对业务包进行解析,能够方便地得到各个服务的元数据,为工具个性化定制提供了数据服务基础,该数据服务基础可高度复用,有效地减少了开发流程中大量重复的逻辑;用户可通过勾选、搜索等方式方便地选择其所需在业务查询工具中配置的服务工具,生成工具构建请求;并且,根据工具构建请求,能够便捷地查询到对应服务的元数据,并对业务查询工具页面进行配置,快速地生成对应的业务查询工具,不仅实现了工具个性化定制,使得工具可根据用户需求进行灵活修改,很好地满足了用户需求,而且还无需工具开发人员针对业务查询工具都进行工具代码编写,每个工具可以动态实时发布,不需要和一个大应用一起发布,缩短了迭代时间,通过配置化和自动化省掉了前后端的开发时间,有效地节省了工具开发时间,降低了工具开发的门槛,提高了工具开发效率。
本发明还提供了一种非易失性计算机存储介质,计算机存储介质存储有至少一可执行指令,可执行指令可执行上述任意方法实施例中的分布式工具配置化构建生成方法。
图7示出了根据本发明实施例的一种计算设备的结构示意图,本发明具体实施例并不对计算设备的具体实现做限定。
如图7所示,该计算设备可以包括:处理器(processor)702、通信接口(Communications Interface)704、存储器(memory)706、以及通信总线708。
其中:
处理器702、通信接口704、以及存储器706通过通信总线708完成相互间的通信。
通信接口704,用于与其它设备比如客户端或其它服务器等的网元通信。
处理器702,用于执行程序710,具体可以执行上述分布式工具配置化构建生成方法实施例中的相关步骤。
具体地,程序710可以包括程序代码,该程序代码包括计算机操作指令。
处理器702可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。计算设备包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器706,用于存放程序710。存储器706可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
程序710具体可以用于使得处理器702执行上述任意方法实施例中的分布式工具配置化构建生成方法。程序710中各步骤的具体实现可以参见上述分布式工具配置化构建生成实施例中的相应步骤和单元中对应的描述,在此不赘述。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的设备和模块的具体工作过程,可以参考前述方法实施例中的对应过程描述,在此不再赘述。
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (20)
1.一种分布式工具配置化构建生成方法,所述方法包括:
将各个业务系统的业务包以及所述业务包的元数据录入至标准数据管理子系统中;
动态加载所述业务包,并对所述业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至服务管理子系统中;
接收客户端发送的携带有工具配置信息的工具构建请求;
根据所述工具构建请求,从所述服务管理子系统中查询所述工具配置信息对应的目标服务的元数据;
根据所述目标服务的元数据,对业务查询工具页面进行配置,生成所述客户端对应的业务查询工具;
所述根据所述目标服务的元数据,对业务查询工具页面进行配置,生成所述客户端对应的业务查询工具进一步包括:
将所述目标服务添加至所述客户端对应的业务查询工具页面中;
根据所述目标服务的元数据,对所述业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;
按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成所述客户端对应的业务查询工具。
2.根据权利要求1所述的方法,其中,对所述业务包进行解析,得到各个服务的元数据进一步包括:
对所述业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱。
3.根据权利要求2所述的方法,其中,对所述业务包中的类实体进行解析包括:
对所述类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,构造得到类核心树;
根据所述类核心树,确定各个字段对应的字段模型路径、字段类型和字段注释。
4.根据权利要求1所述的方法,其中,在所述接收客户端发送的携带有工具配置信息的工具构建请求之前,所述方法还包括:
根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将所述工具构建初始页面发送至所述客户端,以供客户端从所述工具构建初始页面中的服务选项中选择目标服务,生成工具配置信息。
5.根据权利要求1-4任一项所述的方法,其中,在所述接收客户端发送的携带有工具配置信息的工具构建请求之前,所述方法还包括:
根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将所述工具构建初始页面发送至所述客户端,以供所述客户端利用所述工具构建初始页面中的服务搜索功能进行服务搜索;
接收所述客户端发送的携带有搜索关键字的服务搜索请求;
根据所述搜索关键字,从所述服务管理子系统中查询与所述搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至所述客户端,以供所述客户端从相匹配的服务列表中选择目标服务,生成工具配置信息。
6.根据权利要求1-4任一项所述的方法,其中,所述工具配置信息包括有:目标服务标识;所述根据所述工具构建请求,从所述服务管理子系统中查询所述工具配置信息对应的目标服务的元数据进一步包括:
从所述服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
7.根据权利要求1-4任一项所述的方法,其中,所述业务查询工具包括:至少一个服务工具。
8.根据权利要求1-4任一项所述的方法,其中,在所述根据所述目标服务的元数据,对业务查询工具页面进行配置,生成所述客户端对应的业务查询工具之后,所述方法还包括:
将所述业务查询工具对应的业务查询工具页面发送至所述客户端;
接收所述客户端针对业务查询工具页面中指定服务工具发送的查询请求;
根据所述查询请求,调用所述指定服务工具对应的服务,得到结果数据,并将所述结果数据返回给所述客户端。
9.根据权利要求1-4任一项所述的方法,其中,在动态加载所述业务包之前,所述方法还包括:
将各个业务系统的数据表以及所述数据表的元数据录入至所述标准数据管理子系统中。
10.一种分布式工具系统,所述系统包括:标准数据管理子系统、服务管理子系统和工具构建子系统;其中,
所述标准数据管理子系统适于:对各个业务系统的业务包以及所述业务包的元数据进行录入;动态加载所述业务包,并对所述业务包进行解析,得到各个服务的元数据,将各个服务的元数据录入至所述服务管理子系统中;
所述工具构建子系统适于:接收客户端发送的携带有工具配置信息的工具构建请求;根据所述工具构建请求,从所述服务管理子系统中查询所述工具配置信息对应的目标服务的元数据;根据所述目标服务的元数据,对业务查询工具页面进行配置,生成所述客户端对应的业务查询工具;
所述工具构建子系统进一步适于:
将所述目标服务添加至所述客户端对应的业务查询工具页面中;
根据所述目标服务的元数据,对所述业务查询工具页面中的目标服务输入信息和目标服务输出信息进行配置,得到配置后的服务;
按照预设页面展现模板,对配置后的服务的展现方式进行设置,生成所述客户端对应的业务查询工具。
11.根据权利要求10所述的系统,其中,所述标准数据管理子系统进一步适于:
对所述业务包中的类实体、方法实体、请求实体、响应实体、依赖关系实体和字段进行解析,得到各个服务对应的服务标识、服务名称、服务路径、业务包标识、业务系统标识、服务方法、入参、出参、字段模型路径、字段类型、字段注释、服务接口注释以及服务关系图谱。
12.根据权利要求11所述的系统,其中,所述标准数据管理子系统进一步适于:
对所述类实体中所包含的基础模型、类模型、容器基本模型、容器复合模型以及对容器复合模型进行解析,构造得到类核心树;根据所述类核心树,确定各个字段对应的字段模型路径、字段类型和字段注释。
13.根据权利要求10所述的系统,其中,所述工具构建子系统进一步适于:
根据各个服务的元数据,生成包含有服务选项的工具构建初始页面,并将所述工具构建初始页面发送至所述客户端,以供客户端从所述工具构建初始页面中的服务选项中选择目标服务,生成工具配置信息。
14.根据权利要求10-13任一项所述的系统,其中,所述工具构建子系统进一步适于:
根据各个服务的元数据,生成包含有服务搜索功能的工具构建初始页面,并将所述工具构建初始页面发送至所述客户端,以供所述客户端利用所述工具构建初始页面中的服务搜索功能进行服务搜索;
接收所述客户端发送的携带有搜索关键字的服务搜索请求;
根据所述搜索关键字,从所述服务管理子系统中查询与所述搜索关键字相匹配的服务列表,并将相匹配的服务列表返回至所述客户端,以供所述客户端从相匹配的服务列表中选择目标服务,生成工具配置信息。
15.根据权利要求10-13任一项所述的系统,其中,所述工具配置信息包括有:目标服务标识;工具构建子系统进一步适于:
从所述服务管理子系统中查询服务标识为目标服务标识的服务的元数据。
16.根据权利要求10-13任一项所述的系统,其中,所述业务查询工具包括:至少一个服务工具。
17.根据权利要求10-13任一项所述的系统,其中,所述系统还包括:业务查询子系统;
所述业务查询子系统适于:将所述业务查询工具对应的业务查询工具页面发送至所述客户端;接收所述客户端针对业务查询工具页面中指定服务工具发送的查询请求;根据所述查询请求,调用所述指定服务工具对应的服务,得到结果数据,并将所述结果数据返回给所述客户端。
18.根据权利要求10-13任一项所述的系统,其中,所述标准数据管理子系统进一步适于:
对各个业务系统的数据表以及所述数据表的元数据进行录入。
19.一种计算设备,包括:处理器、存储器、通信接口和通信总线,所述处理器、所述存储器和所述通信接口通过所述通信总线完成相互间的通信;
所述存储器用于存放至少一可执行指令,所述可执行指令使所述处理器执行如权利要求1-9中任一项所述的分布式工具配置化构建生成方法对应的操作。
20.一种计算机存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行如权利要求1-9中任一项所述的分布式工具配置化构建生成方法对应的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910854688.2A CN110673839B (zh) | 2019-09-10 | 2019-09-10 | 分布式工具配置化构建生成方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910854688.2A CN110673839B (zh) | 2019-09-10 | 2019-09-10 | 分布式工具配置化构建生成方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110673839A CN110673839A (zh) | 2020-01-10 |
CN110673839B true CN110673839B (zh) | 2023-11-07 |
Family
ID=69077614
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910854688.2A Active CN110673839B (zh) | 2019-09-10 | 2019-09-10 | 分布式工具配置化构建生成方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110673839B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111580854A (zh) * | 2020-03-18 | 2020-08-25 | 平安科技(深圳)有限公司 | 基于应用程序接口网关的前后端分离方法及相关设备 |
CN112084210A (zh) * | 2020-09-28 | 2020-12-15 | 中国建设银行股份有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN113064627B (zh) * | 2021-03-23 | 2023-04-07 | 支付宝(杭州)信息技术有限公司 | 服务接入数据处理方法、平台、终端、设备及系统 |
CN113656095B (zh) * | 2021-08-06 | 2023-08-04 | 北京数码大方科技股份有限公司 | 配置数据的处理方法及装置 |
CN114153547B (zh) * | 2021-12-06 | 2023-11-17 | 珠海金山数字网络科技有限公司 | 管理页面显示方法及装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142826A (zh) * | 2014-07-28 | 2014-11-12 | 百度在线网络技术(北京)有限公司 | 页面的构建方法、装置及系统 |
CN105094818A (zh) * | 2015-07-14 | 2015-11-25 | 国家信息中心 | 基于soa的自然资源综合应用构建方法及系统 |
CN107463301A (zh) * | 2017-06-28 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能的对话系统构建方法、装置、设备及计算机可读存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070240150A1 (en) * | 2006-03-08 | 2007-10-11 | Oracle International Corporation | Simplifying installation of a suite of software products |
CN103136612A (zh) * | 2011-11-29 | 2013-06-05 | 神州数码信息系统有限公司 | 一种零编码构件化流程业务的开发方法 |
CN109753492A (zh) * | 2019-01-02 | 2019-05-14 | 陕西西部资信股份有限公司 | 一种基于元数据配置的系统构建方法及装置 |
-
2019
- 2019-09-10 CN CN201910854688.2A patent/CN110673839B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104142826A (zh) * | 2014-07-28 | 2014-11-12 | 百度在线网络技术(北京)有限公司 | 页面的构建方法、装置及系统 |
CN105094818A (zh) * | 2015-07-14 | 2015-11-25 | 国家信息中心 | 基于soa的自然资源综合应用构建方法及系统 |
CN107463301A (zh) * | 2017-06-28 | 2017-12-12 | 北京百度网讯科技有限公司 | 基于人工智能的对话系统构建方法、装置、设备及计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110673839A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110673839B (zh) | 分布式工具配置化构建生成方法及系统 | |
US8997070B2 (en) | Extension mechanism for scripting language compiler | |
US20050015439A1 (en) | Flexible architecture component (FAC) for efficient data integration and information interchange using web services | |
CN109558525B (zh) | 一种测试数据集的生成方法、装置、设备和存储介质 | |
US9952835B2 (en) | Generation of hybrid enterprise mobile applications in cloud environment | |
US9930113B2 (en) | Data retrieval via a telecommunication network | |
CN104156313A (zh) | 一种Web服务测试用例自动生成方法 | |
CN112860730A (zh) | Sql语句的处理方法、装置、电子设备及可读存储介质 | |
CN113312392A (zh) | 轻量级的规则引擎处理方法及装置 | |
CN113495797A (zh) | 一种消息队列及消费者动态创建方法及系统 | |
CN115599386A (zh) | 代码生成方法、装置、设备及存储介质 | |
CN107391528B (zh) | 前端组件依赖信息搜索方法及设备 | |
CN114297204A (zh) | 一种异构数据源的数据存储、检索方法及装置 | |
CN113987337A (zh) | 基于组件化动态编排的搜索方法、系统、设备及存储介质 | |
CN116483850A (zh) | 数据处理方法、装置、设备以及介质 | |
CN110597827A (zh) | 一种接口控制文件数据的存储方法及系统 | |
CN112970011A (zh) | 记录查询优化中的谱系 | |
CN109254774A (zh) | 软件开发系统中代码的管理方法和装置 | |
CN112181407B (zh) | 业务实现处理方法及装置、系统、电子设备和存储介质 | |
EP2990960A1 (en) | Data retrieval via a telecommunication network | |
US10380084B2 (en) | Data model view with complex calculation capability | |
Ogboada et al. | A model for optimizing the runtime of GraphQL queries | |
CN110334098A (zh) | 一种基于脚本的数据库合并方法及系统 | |
Poulakis et al. | Hocc: an ontology for holistic description of cluster settings | |
CN117311724A (zh) | Tosca解析的实现方法、Tosca解析器及介质 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |