数据处理方法、系统、存储介质及处理器与流程

文档序号:33034168发布日期:2023-01-24 18:34阅读:30来源:国知局
数据处理方法、系统、存储介质及处理器与流程

1.本技术涉及计算机领域,具体地涉及一种数据处理方法、系统、存储介质及处理器。


背景技术:

2.新兴业务系统大多基于springboot,业务系统提供的rest接口可读性强,低耦合,使用便捷。sap系统提供webservice接口需要发布基于soap的wsdl协议,wsdl协议可读性差和难使用。rest对接webservice接口时,需要通过wsdl协议文件生成wsdl客户端代码方可调用,否则不能直接调用。webservice对接rest接口时,协议的请求和返回都需要特殊转换方可调用,否则不能直接调用。
3.业务系统跟sap系统两者通讯协议不一致,无法直接通讯和进行信息交换。针对此问题,现有技术需要定制开发java程序,而定制开发的java程序需要经过测试发版后才能正常使用,不仅开发周期长,而且人力成本高。并且,sap系统发布的wsdl协议不易阅读并且难理解,使得sap系统不能灵活应对新接口,无法满足对接不同业务接口的需求。


技术实现要素:

4.本技术实施例的目的是提供一种数据处理方法、系统、存储介质及处理器。
5.为了实现上述目的,本技术第一方面提供一种数据处理方法,包括:
6.获取客户端发起的预设服务协议请求;
7.解析预设服务协议请求,以得到对应的第一协议报文;
8.解析第一协议报文,以将包含有预设格式的第一协议报文转换为第一解析报文;
9.将第一解析报文发送至服务端,以使服务端根据第一解析报文进行相应的数据处理;
10.接收服务端数据处理后返回的第二解析报文;
11.将第二解析报文转换为预设格式后,将预设格式的数据组装为第二协议报文;
12.将第二协议报文发送至所述客户端,以使客户端接收到服务端返回的与预设服务协议请求对应的反馈数据。
13.在本技术实施例中,解析第一协议报文,以确定第一协议报文的当前节点对应的节点类型,将包含有预设格式的第一协议报文转换成与节点类型对应的第一解析报文。
14.在本技术实施例中,在当前节点的节点类型为数组节点的情况下,将当前节点对应的数据转换为与数据节点对应的第一解析报文,为当前节点添加子节点,将子节点作为新的父节点,遍历新的父节点所包括的子节点,并再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成。
15.在本技术实施例中,在当前节点的节点类型为对象节点的情况下,判断当前节点是否为叶子节点,在确定当前节点为叶子节点的情况下,将当前节点对应的数据转换为与叶子节点对应的第一解析报文。
16.在本技术实施例中,还包括:在确定当前节点不是叶子节点的情况下,将当前节点作为父节点,并遍历父节点包括的子节点,再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成。
17.在本技术实施例中,对预设格式的数据增加预设的头部信息,以得到第二协议报文。
18.在本技术实施例中,将第二协议报文格式化,以将第二协议报文设置为预设格式的文档,将预设格式的文档发送至所述客户端。
19.本技术第二方面提供一种处理器,被配置成执行上述的数据处理方法。
20.本技术第三方面提供一种数据处理系统,包括:客户端,用于发起预设服务协议请求;服务端,用于接收第一解析报文,并进行相应的数据处理后返回第二解析报文;第三方工具,包括被配置成执行上述的用于数据处理方法的处理器。
21.本技术第四方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,指令在被处理器执行时使得所述处理器被配置成执行上述的数据处理方法。
22.通过上述技术方案,基于第三方工具,简化了复杂不易理解的请求协议,实现了客户端与服务端的灵活对接即两种不同协议的无缝对接,满足了对接不同业务接口的需求,并且解决了现有接口模式开发周期长、人力成本高的问题。
23.本技术实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
24.附图是用来提供对本技术实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本技术实施例,但并不构成对本技术实施例的限制。在附图中:
25.图1示意性示出了根据本技术实施例的用于数据处理方法的应用环境示意图;
26.图2示意性示出了根据本技术实施例的用于数据处理方法的流程示意图;
27.图3示意性示出了根据本技术实施例的用于判断当前节点类型步骤的示意图;
28.图4示意性示出了根据本技术实施例的用于sap系统对接业务系统数据处理方法的流程示意图;
29.图5示意性示出了根据本技术实施例的用于业务系统对接sap系统数据处理方法的流程示意图;
30.图6示意性示出了根据本技术实施例的用于数据处理系统的结构框图;
31.图7示意性示出了根据本技术实施例的计算机设备的内部结构图。
具体实施方式
32.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,应当理解的是,此处所描述的具体实施方式仅用于说明和解释本技术实施例,并不用于限制本技术实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
33.本技术提供的用于数据处理的方法,可以应用于如图1所示的应用环境中。其中,
第三方工具103分别与客户端101和服务端102通过网络进行通信。其中,客户端101和服务端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,第三方工具103可以用独立的服务器或者是多个服务器组成的服务器集群来实现。客户端101,用于发起服务协议请求。服务端102,用于接收第三方工具103处理后的第一解析报文,并进行相应的数据处理后返回第二解析报文。第三方工具103,用于处理客户端101和服务端102之间互换的协议。
34.图2示意性示出了根据本技术实施例的用于数据处理方法的流程示意图。如图2所示,在本技术一实施例中,提供了一种用于数据处理的方法,本实施例主要以该方法应用于上述图1中的第三方工具103来举例说明,包括以下步骤:
35.步骤201,获取客户端发起的预设服务协议请求。
36.步骤202,解析预设服务协议请求,以得到对应的第一协议报文。
37.步骤203,解析第一协议报文,以将包含有预设格式的第一协议报文转换为第一解析报文。
38.步骤204,将第一解析报文发送至服务端,以使服务端根据第一解析报文进行相应的数据处理。
39.步骤205,接收服务端数据处理后返回的第二解析报文。
40.步骤206,将第二解析报文转换为预设格式后,将预设格式的数据组装为第二协议报文。
41.步骤207,将第二协议报文发送至客户端,以使客户端接收到服务端返回的与预设服务协议请求对应的反馈数据。
42.客户端为sap系统,sap系统是一款erp(企业管理)系统。传统的erp(企业管理)系统都比较陈旧,而且其中涉及的管理模式都比较落后,甚至有些已经不足以支撑企业的参数数据处理。sap系统为当前最具影响力,代表智能性、先进性、可持续性的企业管理系统。erp(企业管理)系统是一种数据交互行为,传统的erp数据比较死板,基本上不存在对数据的分析,简单的调用与输入输出基本构成数据的参数。而sap系统除了基本的输入输出操作之外,还有自主检测成本,根据企业的管理模式输出合理的结果。sap系统提供webservice接口,发布基于soap的wsdl协议。具体地,soap一种简单对象访问协议,用来描述传递信息的格式,是一种轻量的、简单的、基于xml的协议。具体地,wsdl是一种web服务描述语言用来描述如何访问具体的接口,描述与目录中列出的web服务进行交互时需要绑定的协议和信息格式。
43.预设服务协议请求可以是wsdl协议请求。第一协议报文为soap报文。预设格式可以是xml格式。xml具有可扩展性、自描述性、简洁性。具体地,xml易于充分利用数据,xml具有跨平台且易于数据交换和共享的特点,数据可以被更多的用户和设备所利用。第一解析报文可以是指json报文。第二解析报文为服务端处理后返回的json报文。第二协议报文为json报文返回转换后组装成的soap报文。服务端可以是指业务系统,业务系统基于springboot(一个基于java的开源框架,用于创建微服务),业务系统提供的rest接口具有可读性强、低耦合、使用便捷等特性,rest接口的返回值类型为json和xml。
44.第三方工具获取sap系统webservice接口发起的预设服务协议请求,并对此服务协议请求进行解析,以得到第一协议报文。解析第一协议报文,并将第一协议报文中的预设
格式报文转换为第一解析报文。将转换后得到的第一解析报文发送至业务系统,业务系统对接收到的第一解析报文进行相应的数据处理,并通过rest接口返回处理之后的第二解析报文。返回后的第二解析报文被转换为预设格式,将预设格式数据组装成第二协议报文并发送至sap系统。
45.webservice接口对接rest接口,协议的请求和返回都需要特殊转换方可调用,否则不能直接调用。现有技术对接webservice接口和rest接口两种不同协议时,需要定制化开发java程序并进行测试发版,且开发周期长、人力成本高。鉴于上述技术缺点,本技术方案提供的第三方工具,类似低代码式的开发,基于一定的配置规则,能够实现sap系统和业务系统的灵活对接即http-rest和wsdl-soap协议无缝对接,并且解决了现有接口模式开发周期长、人力成本高的问题。
46.在一个实施例中,解析第一协议报文,以确定第一协议报文的当前节点对应的节点类型,将包含有预设格式的第一协议报文转换成与节点类型对应的第一解析报文。
47.第三方工具获取sap系统webservice接口发起的预设服务协议请求,并对此服务协议请求进行解析,以得到第一协议报文。解析第一协议报文,并将第一协议报文中的预设格式报文转换为第一解析报文。具体地,将第一协议报文中的预设格式报文转换为第一解析报文时,需判断预设格式的第一协议报文当前节点类型,并将当前节点对应的数据转换为与数据节点对应的第一解析报文。
48.在一个实施例中,如图3所示,示意性示出了根据本技术的用于判断当前节点类型步骤的示意图。如图3所示,在本技术一实施例中,提供了一种用于判断当前节点类型的方法,包括以下步骤:
49.s301,获取请求参数预处理配置。
50.s302,判断当前的节点类型是否为数组节点,若是,则执行s303;若否,则执行s306。
51.s303,为当前节点添加子节点。
52.s304,将子节点作为新的父节点。
53.s305,遍历新的父节点所包括的子节点,再次回到s302。
54.s306,判断当前节点是否为叶子节点,若是,则执行s307;若否,则执行s308。
55.s307,返回当前节点值。
56.s308,将当前节点作为父节点。
57.s309,遍历父节点包括的子节点,再次回到s302。
58.第三方工具可以获取sap系统webservice接口发起的预设服务协议请求,并对此服务协议请求进行解析,以得到第一协议报文。解析第一协议报文,并将第一协议报文中的预设格式报文转换为第一解析报文。具体地,将第一协议报文中的预设格式报文转换为第一解析报文时,需判断预设格式的第一协议报文当前节点类型,并将当前节点对应的数据转换为与数据节点对应的第一解析报文。
59.具体地,判断当前的节点类型,在当前节点的节点类型为数组节点的情况下,为当前节点添加子节点,将添加的子节点作为新的父节点,递归遍历新的父节点所包括的子节点,并再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成,将当前节点对应的数据转换为与数据节点对应的第一解析报文。
60.具体地,判断当前的节点类型,在当前节点的节点类型为对象节点的情况下,判断当前节点是否为叶子节点,在确定当前节点为叶子节点的情况下,将当前节点对应的数据转换为与叶子节点对应的第一解析报文。
61.具体地,判断当前的节点类型,在当前节点的节点类型为对象节点的情况下,判断当前节点是否为叶子节点,在确定当前节点不是叶子节点的情况下,将当前节点作为父节点,遍历父节点所包括的子节点,再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成,将当前节点对应的数据转换为与数据节点对应的第一解析报文。
62.在一个实施例中,对预设格式的数据增加预设的头部信息,以得到第二协议报文。
63.第三方工具获取sap系统webservice接口发起的预设服务协议请求,并对此服务协议请求进行解析,以得到第一协议报文。解析第一协议报文,并将第一协议报文中的预设格式报文转换为第一解析报文。将转换后得到的第一解析报文发送至业务系统,业务系统对接收到的第一解析报文进行相应的数据处理,并通过rest接口返回处理之后的第二解析报文。返回后的第二解析报文被转换为预设格式,将预设格式数据组装成第二协议报文并发送至sap系统。具体地,将预设格式数据组装成第二协议报文,即对预设格式的数据增加预设的头部信息,以得到第二协议报文。具体地,对xml最外层包一层soap头信息,得到组装的soap报文。
64.在一个实施例中,将第二协议报文格式化,以将第二协议报文设置为预设格式的文档,将预设格式的文档发送至所述客户端。
65.第三方工具获取sap系统webservice接口发起的预设服务协议请求,并对此服务协议请求进行解析,以得到第一协议报文。解析第一协议报文,并将第一协议报文中的预设格式报文转换为第一解析报文。将转换后得到的第一解析报文发送至业务系统,业务系统对接收到的第一解析报文进行相应的数据处理,并通过rest接口返回处理之后的第二解析报文。返回后的第二解析报文被转换为预设格式,将预设格式数据组装成第二协议报文并发送至sap系统。具体地,将预设格式数据组装成第二协议报文并发送至sap系统,将组装成的第二协议报文格式化,以将第二协议报文设置为预设格式的文档,再将格式化的第二协议文档发送至sap系统。具体地,经过组装的soap报文格式是一种普通的文本格式,对soap报文格式化之后再返回给sap系统,即springboot返回的http报文头content-type要设置为text/xml。
66.在一个实施例中,如图4所示,示意性示出了根据本技术的sap系统对接业务系统数据处理方法的流程示意图。如图4所示,在本技术一实施例中,提供了一种用于sap系统对接业务系统数据处理的方法,具体包括:
67.sap系统通过webservice端口发送wsdl协议请求,接口平台通过io流读取wsdl协议解析生成的soap报文,再将soapxml报文转换为json报文,将json报文发送至业务系统,业务系统处理完后返回json报文,接口平台将业务json报文转换为xml报文,再将xml报文最外层包一层soap头信息组装为soap报文,返回至webservice端口。具体地,soapxml报文转换json报文的时候需要解析当前节点,基于数据库配置规则,判断当前的节点类型是数组节点还是对象节点。具体地,组装的soap报文是一种普通的文本格式,对soap报文进行格式化,即springboot返回的http报文头content-type设置为text/xml,再将格式化的soap报文返回至webservice端口。
68.上述实施例基于现有的http协议、动态配置规则等功能的管理方法,将http-rest和wsdl-soap协议无缝对接,打造灵活、高配置化的业务功能,能够节约开发人力成本,简化难懂的wsdl协议,以便更多精力致力于处理业务主流程。
69.在一个实施例中,如图5所示,示意性示出了根据本技术的用于业务系统对接sap系统数据处理方法的流程示意图。如图5所示,在本技术一实施例中,提供了一种用于业务系统对接sap系统数据处理的方法,包括:
70.接口平台将业务系统的请求json报文转换成xml格式报文,基于数据库配置规则将xml报文添加soap请求头信息,组装成soap报文,将soap报文给发送至webservice端口,sap系统处理完后,返回soap报文,接口平台将soapxml解析为json报文,将json报文返回至业务系统。具体地,解析soapxml报文的时候需要解析当前节点,基于数据库配置规则,判断当前的节点类型是数组节点还是对象节点。
71.图6示意性示出了根据本技术实施例的用于数据处理系统的结构框图。参考图6,在本技术一个实施例中,还提供一种数据处理系统600,包括:
72.客户端602,用于发起预设服务协议请求;
73.服务端604,用于接收第一解析报文,并进行相应的数据处理后返回第二解析报文;
74.第三方工具606,用于处理客户端602和服务端604之间互换的协议。
75.本技术实施例提供了一种存储介质,其上存储有程序,该程序被处理器执行时实现上述数据处理的方法。
76.本技术实施例提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行上述数据处理的方法。
77.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器a01、网络接口a02、存储器(图中未示出)和数据库(图中未示出)。其中,该计算机设备的处理器a01用于提供计算和控制能力。该计算机设备的存储器包括内存储器a03和非易失性存储介质a04。该非易失性存储介质a04存储有操作系统b01、计算机程序b02和数据库(图中未示出)。该内存储器a03为非易失性存储介质a04中的操作系统b01和计算机程序b02的运行提供环境。该计算机设备的数据库用于存储数据处理方法的数据。该计算机设备的网络接口a02用于与外部的终端通过网络连接通信。该计算机程序b02被处理器a01执行时以实现一种数据处理方法。
78.本领域技术人员可以理解,图7中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
79.本技术实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:获取客户端发起的预设服务协议请求;解析预设服务协议请求,以得到对应的第一协议报文;解析第一协议报文,以将包含有预设格式的第一协议报文转换为第一解析报文;将第一解析报文发送至服务端,以使服务端根据第一解析报文进行相应的数据处理;接收服务端数据处理后返回的第二解析报文;将第二解析报文转换为预设格式后,将预设格式的数据组装为第二协议报文;将第二协议报文发送至客户端,以使客户端接收到服务端返回的与预设服务协议请求对应的反馈数
据。
80.在一个实施例中,解析第一协议报文,以确定第一协议报文的当前节点对应的节点类型,将包含有预设格式的第一协议报文转换成与节点类型对应的第一解析报文。
81.在一个实施例中,在当前节点的节点类型为数组节点的情况下,将当前节点对应的数据转换为与数据节点对应的第一解析报文,为当前节点添加子节点,将子节点作为新的父节点,遍历新的父节点所包括的子节点,并再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成。
82.在一个实施例中,在当前节点的节点类型为对象节点的情况下,判断当前节点是否为叶子节点,在确定当前节点为叶子节点的情况下,将当前节点对应的数据转换为与叶子节点对应的第一解析报文。
83.在一个实施例中,还包括:在确定当前节点不是叶子节点的情况下,将当前节点作为父节点,并遍历父节点包括的子节点,再次执行确定当前节点对应的节点类型的步骤,直到全部的节点遍历完成。
84.在一个实施例中,对预设格式的数据增加预设的头部信息,以得到第二协议报文。
85.在一个实施例中,将第二协议报文格式化,以将第二协议报文设置为预设格式的文档,将预设格式的文档发送至所述客户端。
86.本技术还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下数据处理方法的步骤的程序。
87.本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
88.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
89.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
90.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
91.在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。
92.存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flash ram)。存储器是计算机可读介质的示例。
93.计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
94.还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
95.以上仅为本技术的实施例而已,并不用于限制本技术。对于本领域技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本技术的权利要求范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1