CN111552838B - 数据处理方法及装置、计算机设备、存储介质 - Google Patents
数据处理方法及装置、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN111552838B CN111552838B CN202010221949.XA CN202010221949A CN111552838B CN 111552838 B CN111552838 B CN 111552838B CN 202010221949 A CN202010221949 A CN 202010221949A CN 111552838 B CN111552838 B CN 111552838B
- Authority
- CN
- China
- Prior art keywords
- data
- protocol template
- processing
- message data
- code components
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/84—Mapping; Conversion
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供了一种数据处理方法及装置、计算机设备、存储介质,其中,该方法包括:获取报文数据;根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;根据所述协议模板填充或解析所述报文数据,生成协议模板数据;通过调用多个代码组件处理所述协议模板数据,得到目标数据。通过本发明,解决了相关技术中的报文数据处理无法满足定制化需求,灵活性不高的技术问题,从而提高数据处理效率。
Description
技术领域
本发明涉及计算机领域,具体而言,涉及一种数据处理方法及装置、计算机设备、存储介质。
背景技术
扩展标记语言(Extensible Markup Language,简称XML),用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。XML使用DTD(document type definition)文档类型定义来组织数据;格式统一,跨平台和语言,早已成为业界公认的标准。最常用的解析方式有:DOM(文件对象模型)、SAX(全称为Simple API for XML,一种接口)、JDOM(一种使用XML的独特Java工具包)、DOM4J(Java XML框架)。JSON(JavaScript Object Notation,JavaScript对象简谱)一种轻量级的数据交换格式,具有良好的可读和便于快速编写的特性。可在不同平台之间进行数据交换。JSON采用兼容性很高的、完全独立于语言文本格式,同时也具备类似于C语言的习惯(包括C,C++,C#,Java,JavaScript,Perl(全称为Practical Extraction andReport Language,即实用报表提取语言),Python等)体系的行为。这些特性使JSON成为理想的数据交换语言。最常用的解析方式:Java类库Gson、Java库FastJson、JackJson(为多功能的Java JSON处理包)。
相关技术中,由于XML文件格式复杂,JSON的通用性不高,XML和JSON的解析或/或封装的方法均比较固定,且XML和JSON之间的数据格式转换不灵活,使得服务器端和客户端都需要花费大量代码来封装和解析XML或者JSON,导致服务器端和客户端代码变得异常复杂且不易维护;很难达到定制化的需求,而且在性能上也有些不足;花费较多的资源和时间。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
发明内容
本发明实施例提供了一种数据处理方法及装置、计算机设备、存储介质,以至少解决了相关技术中的数据处理无法满足定制化需求,灵活性不高的技术问题。
根据本发明的一个实施例,提供了一种数据处理方法,包括:获取报文数据;根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;根据所述协议模板填充或解析所述报文数据,生成协议模板数据;通过调用多个代码组件处理所述协议模板数据,得到目标数据。
可选的,根据所述协议模板填充或解析所述报文数据,生成协议模板数据包括:基于所述数据需求对所述报文数据的多个字段信息进行筛选,得到有用字段信息;若根据所述协议模板填充所述有用字段信息,生成第一协议模板数据;或,若根据所述协议模板解析所述有用字段信息,生成第二协议模板数据。
可选的,在根据所述协议模板填充或解析所述报文数据,生成协议模板数据之后,所述方法还包括:若生成所述第一协议模板数据,基于所述第一协议模板数据选择封装工具,其中,所述封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java库fastjson的组合;或,若生成所述第二协议模板数据,基于所述第二协议模板数据选择解析工具,其中,所述解析工具至少包括:递归解析和所述DOM4J组合,递归解析和所述fastjson组合。
可选的,根据需求信息为所述报文数据设置协议模板还包括:基于所述数据需求和所述处理流程确定所述报文数据的处理工作量,其中,所述处理工作量至少包括:处理所述报文数据的占用内存信息,处理所述报文数据的消耗时间信息。
可选的,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:根据所述处理流程调用多个第一代码组件,其中,所述多个第一代码组件至少包括以下之一:JSON解析组件,JSON封装组件,XML解析组件,XML封装组件;通过执行所述多个第一代码组件的业务逻辑更改所述报文数据的数据格式,得到所述目标数据,其中,所述数据格式至少包括:JSON格式,XML格式。
可选的,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:根据所述处理流程调用多个第二代码组件,其中,所述多个第二代码组件至少包括以下之一:JSON转换组件,XML转换组件;通过执行所述多个第二代码组件的业务逻辑更改所述协议模板数据的数据映射关系,得到所述目标数据;其中,所述数据映射关系至少包括:第一JSON格式数据对应第二JSON格式数据,第一XML格式数据对应第二XML格式数据。
可选的,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:按照所述处理流程对所述多个代码组件进行组合,得到组合后的多个代码组件;将所述组合后的多个代码组件保存至代码块;通过调用所述代码块执行所述组合后的多个代码组件对应的业务逻辑,得到所述目标数据。
根据本发明的一个实施例,还提供了一种数据处理装置,包括:获取模块,用于获取报文数据;设置模块,用于根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;生成模块,用于根据所述协议模板填充或解析所述报文数据,生成协议模板数据;处理模块,用于通过调用多个代码组件处理所述协议模板数据,得到目标数据。
可选的,所述生成模块包括:筛选单元,用于基于所述数据需求对所述报文数据的多个字段信息进行筛选,得到有用字段信息;生成单元,用于若根据所述协议模板填充所述有用字段信息,生成第一协议模板数据;或,若根据所述协议模板解析所述有用字段信息,生成第二协议模板数据。
可选的,所述装置还包括:选择模块,用于在根据所述协议模板填充或解析所述报文数据,生成协议模板数据之后,若生成所述第一协议模板数据,基于所述第一协议模板数据选择封装工具,其中,所述封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java库fastjson的组合;或,若生成所述第二协议模板数据,基于所述第二协议模板数据选择解析工具,其中,所述解析工具至少包括:递归解析和所述DOM4J组合,递归解析和所述fastjson组合。
可选的,所述设置模块还包括:确定单元,用于基于所述数据需求和所述处理流程确定所述报文数据的处理工作量,其中,所述处理工作量至少包括:处理所述报文数据的占用内存信息,处理所述报文数据的消耗时间信息。
可选的,所述处理模块包括:第一调用单元,用于根据所述处理流程调用多个第一代码组件,其中,所述多个第一代码组件至少包括以下之一:JSON解析组件,JSON封装组件,XML解析组件,XML封装组件;第一更改单元,用于通过执行所述多个第一代码组件的业务逻辑更改所述报文数据的数据格式,得到所述目标数据,其中,所述数据格式至少包括:JSON格式,XML格式。
可选的,所述处理模块包括:第二调用单元,用于根据所述处理流程调用多个第二代码组件,其中,所述多个第二代码组件至少包括以下之一:JSON转换组件,XML转换组件;第二更改单元,用于通过执行所述多个第二代码组件的业务逻辑更改所述协议模板数据的数据映射关系,得到所述目标数据;其中,所述数据映射关系至少包括:第一JSON格式数据对应第二JSON格式数据,第一XML格式数据对应第二XML格式数据。
可选的,所述处理模块包括:组合单元,用于按照所述处理流程对所述多个代码组件进行组合,得到组合后的多个代码组件;保存单元,用于将所述组合后的多个代码组件保存至代码块;执行单元,用于通过调用所述代码块执行所述组合后的多个代码组件对应的业务逻辑,得到所述目标数据。
根据本发明的又一个实施例,还提供了一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项装置实施例中的步骤。
通过本发明,根据需求信息为报文数据制定协议模板,从而明确待处理数据的数据需求和处理流程,根据协议模板填充或解析报文数据,得到协议模板数据,通过调用代码组件处理协议模板数据,实现了处理报文数据的定制化需求,解决了相关技术中的报文数据处理无法满足定制化需求,灵活性不高的技术问题,减少处理报文数据所占用的资源和时间,从而提高数据处理效率。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种数据处理方法应用于计算机终端的硬件结构框图;
图2是根据本发明实施例的一种数据处理方法的流程图;
图3是根据本发明实施例提供的一种报文数据的解析流程的示意图;
图4是根据本发明实施例提供的一种报文数据的封装流程的示意图;
图5是根据本发明实施例提供的一种可视化页面上的代码组件标识的示意图一;
图6是根据本发明实施例提供的一种可视化页面上的代码组件的标识的示意图二;
图7是根据本发明实施例的数据处理装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、服务器、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种数据处理方法应用于计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种数据处理方法,图2是根据本发明实施例的一种数据处理方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取报文数据;
本实施例中,报文数据的数据来源是由指定的数据池提供的。
步骤S204,根据需求信息为报文数据设置协议模板,其中,协议模板包括:报文数据的数据需求,报文数据的处理流程;
在本实施例中,为报文数据制定了特定模板(即上述协议模板),在模板中明确了报文数据的需求,即选择有用的数据;明确了报文数据的处理流程,比如对报文数据进行封装;或解析;或先封装,再解析;或先解析,再封装。
步骤S206,根据协议模板填充或解析报文数据,生成协议模板数据;
步骤S208,通过调用多个代码组件处理协议模板数据,得到目标数据。
通过上述步骤,根据需求信息为报文数据制定协议模板,从而明确待处理数据的数据需求和处理流程,根据协议模板填充或解析报文数据,得到协议模板数据,通过调用代码组件处理协议模板数据,实现了处理报文数据的定制化需求,解决了相关技术中的报文数据处理无法满足定制化需求,灵活性不高的技术问题,减少处理报文数据所占用的资源和时间,从而提高数据处理效率。
在一个可选的实施例中,根据协议模板填充或解析报文数据,生成协议模板数据包括:基于数据需求对报文数据的多个字段信息进行筛选,得到有用字段信息;若根据协议模板填充有用字段信息,生成第一协议模板数据;或,若根据协议模板解析有用字段信息,生成第二协议模板数据。
在本实施例中,考虑到数据的冗余问题,要对报文数据进行筛选,选择有用的数据,假设待处理的数据来源有100个字段,需要用到的就20个,则制定处理20个字段的协议模板。例如,报文数据的数据编码为:AA12345678,其中,AA为报文数据的标识码,数字代表字段;而需要的字段是367;对报文数据标识为:BB367。通过设置协议模板,对报文数据进行筛选,不像开源工具那样,不管有用没用的字段,都一起处理,费时费力,从而提高了数据处理效率。
在本案的一个实施例中,在根据协议模板填充或解析报文数据,生成协议模板数据之后,还包括:若生成第一协议模板数据,基于第一协议模板数据选择封装工具,其中,封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java库fastjson的组合;或,若生成第二协议模板数据,基于第二协议模板数据选择解析工具,其中,解析工具至少包括:递归解析和DOM4J组合,递归解析和fastjson组合。
在本实施例中,在对报文数据为封装和/或解析时,为报文数据制定封装和或解析方式,解析或封装方式的选择是体现性能的一个非常重要的考核指标。
在经过多次试验验证后,优选地,需要进行XML解析时,协议模板将解析方式制定为递归解析和DOM4J组合使用,进一步地,XML数据解析的过程为:首先创建XML文件,接着在类中包含头文件并使用命名文件,然后获得XML文件全路径,并加载XML文件,找到对应的节点,然后从节点开始解析,找到了对应的Node(节点),即从对应的Node处开始递归的查找,直到找到最小的节点,也就是最基本的Element(单元);再对每一个Element进行解析。
优选地,需要进行JSON解析时,协议模板将解析方式制定为递归解析和fastjson组合使用。JSON数据解析的过程为:首先创建JSON文件,然后在类中包含document.h和cocos-ext.h头文件,接着通过FileUtils工具类获得JSON文件路径,并通过Document对象解析JSON数据,最终获得不同类型的数据值。
优选地,需要进行XML封装时,封装工具制定为递归封装和DOM4J组合使用;需要进行JSON封装时,封装工具制定为递归封装和fastjson组合使用。
通过上述对封装和/或解析设置了特定的处理方式,从而实现定制化需求。
可选的,根据需求信息为报文数据设置协议模板还包括:基于数据需求和处理流程确定报文数据的处理工作量,其中,处理工作量至少包括:处理报文数据的占用内存信息,处理报文数据的消耗时间信息。
在本案的一个实施例中,在确定报文数据的处理需求和处理流程后,即明确了处理数据的处理工作量,其中,工作量包括时间复杂度和空间复杂度,时间复杂度表示算法在特定输入上运行时所消耗的时间,空间复杂度表示算法运行时临时占用的存储空间,根据时间复杂度确定执行解析或封装的递归算法的递归次数。
通过协议模板处理报文数据,不像开源工具那样,不管有用没用的字段,都一起解析或者封装,解析或者封装完了还要二次再处理,费时费力。
在本案的一个实施例中,通过调用多个代码组件处理协议模板数据,得到目标数据,包括:根据处理流程调用多个第一代码组件,其中,多个第一代码组件至少包括以下之一:JSON解析组件,JSON封装组件,XML解析组件,XML封装组件;通过执行多个第一代码组件的业务逻辑更改报文数据的数据格式,得到目标数据;其中,数据格式至少包括:JSON格式,XML格式。
在本实施例中,在报文数据经过定制化模板填充后,在可视化页面上拖拽多个代码组件(即上述多个第一代码组件)的标识进行组合,按需要调整多个代码组件,实现了报文数据的JSON格式转换为XML格式,或者报文数据的XML格式转换为JSON格式,进而能够通过调用代码组件实现多个平台之间的数据格式不兼容等缺陷问题,从而解决了多平台的各种复杂业务逻辑问题。
可选地,通过调用多个代码组件处理协议模板数据,得到目标数据,包括:根据处理流程调用多个第二代码组件,其中,多个第二代码组件至少包括以下之一:JSON转换组件,XML转换组件;通过执行多个第二代码组件的业务逻辑更改协议模板数据的数据映射关系,得到目标数据;其中,数据映射关系至少包括:第一JSON格式数据对应第二JSON格式数据,第一XML格式数据对应第二XML格式数据。
在本实施例中,通过制定协议模板,再根据协议模板调用代码组件来处理报文数据,可以实现将一种JSON格式数据转换为另一种JSON格式数据,或者将一种XML格式数据转换为另一种XML格式数据等。
在本案的一个可选的实施例中,通过调用多个代码组件处理协议模板数据,得到目标数据,包括:按照处理流程对多个代码组件进行组合,得到组合后的多个代码组件;将组合后的多个代码组件保存至代码块;通过调用代码块执行组合后的多个代码组件对应的业务逻辑,得到目标数据。
下面结合具体实施例,对本发明提供的技术方案进一步的说明:
图3是根据本发明实施例提供的一种报文数据的解析流程的示意图,如图3所示,获取json/xml字符串,基于协议模板解析json/xml字符串,调用解析的代码组件对json/xml字符串进行二次解析,最后放置到数据池中。
图4是根据本发明实施例提供的一种报文数据的封装流程的示意图,如图4所示,数据池提供报文数据来源,基于协议模板填充后,调用封装的代码组件对报文数据进行封装,得到json/xml字符串。
例如,某医院接口返回的JSON数据中,诊断信息并未放在指定KEY(密钥)上,平台引擎可通过调用封装组件,改成将诊断信息更改为指定格式后,再发送至其他平台。图5是根据本发明实施例提供的一种可视化页面上的代码组件标识的示意图一,如图5所示,首先默认调用开始组件的标识,再调用json解析组件的标识,通过json解析组件对待处理信息进行解析,再调用json封装组件的标识,对解析后的信息进行封装,结束后默认调用结束组件的标识,从而将一种JSON格式封装成JSON格式的代码块,其中,与页面上的代码组件的标识的拖拽事件对应的代码块执行过程如下:
报文数据转换为:
在本案的另一个具体实施例中,XML格式数据可以转为JSON格式数据,JSON格式数据也可以转为XML格式数据。包括以下步骤:
例如,第一平台发送JSON格式报文至引擎平台,引擎拖拽JSON解析的组件标识对JSON格式报文进行解析;然后拖拽XML封装组件对解析后的报文进行XML封装,从而实现了将JSON报文转化成指定的XML格式,再发送至第二平台上的接口,第二平台通过接口进行数据获取。如图6所示,图6是根据本发明实施例提供的一种可视化页面上的代码组件的标识的示意图二,首先调用开始组件的标识,再调用json解析组件的标识,再调用xml封装组件的标识,最后调用结束组件的标识。
将一种JSON格式封装成XML格式的代码块,代码块如下:
报文数据转换为:
在本案的另一个具体实施例中,A***和C***只进行XML交互,B***和C***只进行JSON交互,场景就来了,A***可以调用C***,C***再调用B***,获得它想要的数据,无需这两个***之间进行改造,方便又好用。
例如,C***为数据接入组,负责医保数据对接,内部对接是社商项目组(A***),外部对接宁波卫计委(B***),A***中使用的是JSON格式文件,B***中使用的是XML格式文件。
社商项目组A将入参(即报文数据)传给数据接入组,数据接入组制定和入参有关的JSON模板、XML模板,将JSON格式的医保数据转成XML格式的医保数据,传给宁波卫计委B。
宁波卫计委B将结果返回给数据接入组,数据接入组制定和结果有关的JSON模板、XML模板,将XML格式的医保数据转成JSON格式的医保数据,然后传给社商项目组。从而完成***A和***B之间的数据对接。
通过上述实施例,制定封装和/或解析模板,来明确封装和/或解析的需求,封装和/或解析的流程以及封装和/或解析的工作量,通过使用递归和DOM4J的组合方式对XML进行封装或解析,使用递归和fastjson对JSON进行封装或解析,从而实现了XML格式数据和JSON格式数据的处理达到了定制化的需求,减少了数据冗余,提高性能,从而满足用户需求。
实施例2
在本实施例中还提供了一种数据处理装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图7是根据本发明实施例的一种数据处理装置的结构框图,如图7所示,该装置包括:获取模块70,用于获取报文数据;设置模块72,连接至上述获取模块70,用于根据需求信息为报文数据设置协议模板,其中,协议模板包括:报文数据的数据需求,报文数据的处理流程;生成模块74,连接至上述设置模块72,用于根据协议模板填充或解析报文数据,生成协议模板数据;处理模块76,连接至上述生成模块74,用于通过调用多个代码组件处理协议模板数据,得到目标数据。
可选的,生成模块74包括:筛选单元,用于基于数据需求对报文数据的多个字段信息进行筛选,得到有用字段信息;生成单元,用于若根据协议模板填充有用字段信息,生成第一协议模板数据;或,若根据协议模板解析有用字段信息,生成第二协议模板数据。
可选的,上述装置还包括:选择模块,用于在根据协议模板填充或解析报文数据,生成协议模板数据之后,若生成第一协议模板数据,基于第一协议模板数据选择封装工具,其中,封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java库fastjson的组合;或,若生成第二协议模板数据,基于第二协议模板数据选择解析工具,其中,解析工具至少包括:递归解析和DOM4J组合,递归解析和fastjson组合。
可选的,设置模块72还包括:确定单元,用于基于数据需求和处理流程确定报文数据的处理工作量,其中,处理工作量至少包括:处理报文数据的占用内存信息,处理报文数据的消耗时间信息。
可选的,处理模块76包括:第一调用单元,用于根据处理流程调用多个第一代码组件,其中,多个第一代码组件至少包括以下之一:JSON解析组件,JSON封装组件,XML解析组件,XML封装组件;第一更改单元,用于通过执行多个第一代码组件的业务逻辑更改报文数据的数据格式,得到目标数据,其中,数据格式至少包括:JSON格式,XML格式。
可选的,处理模块76包括:第二调用单元,用于根据处理流程调用多个第二代码组件,其中,多个第二代码组件至少包括以下之一:JSON转换组件,XML转换组件;第二更改单元,用于通过执行多个第二代码组件的业务逻辑更改协议模板数据的数据映射关系,得到目标数据;其中,数据映射关系至少包括:第一JSON格式数据对应第二JSON格式数据,第一XML格式数据对应第二XML格式数据。
可选的,处理模块76包括:组合单元,用于按照处理流程对多个代码组件进行组合,得到组合后的多个代码组件;保存单元,用于将组合后的多个代码组件保存至代码块;执行单元,用于通过调用代码块执行组合后的多个代码组件对应的业务逻辑,得到目标数据。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取报文数据;
S2,根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;
S3,根据所述协议模板填充或解析所述报文数据,生成协议模板数据;
S4,通过调用多个代码组件处理所述协议模板数据,得到目标数据。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取报文数据;
S2,根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;
S3,根据所述协议模板填充或解析所述报文数据,生成协议模板数据;
S4,通过调用多个代码组件处理所述协议模板数据,得到目标数据。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (8)
1.一种数据处理方法,其特征在于,包括:
获取报文数据;
根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;
根据所述协议模板填充或解析所述报文数据,生成协议模板数据;
通过调用多个代码组件处理所述协议模板数据,得到目标数据;
其中,所述处理流程包括:对所述报文数据进行封装;或解析;或先封装,再解析;或先解析,再封装;
根据所述协议模板填充或解析所述报文数据,生成协议模板数据包括:
基于所述数据需求对所述报文数据的多个字段信息进行筛选,得到有用字段信息;
若根据所述协议模板填充所述有用字段信息,生成第一协议模板数据;或,若根据所述协议模板解析所述有用字段信息,生成第二协议模板数据;
在根据所述协议模板填充或解析所述报文数据,生成协议模板数据之后,所述方法还包括:
若生成所述第一协议模板数据,基于所述第一协议模板数据选择封装工具,其中,所述封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java 库fastjson的组合;或,
若生成所述第二协议模板数据,基于所述第二协议模板数据选择解析工具,其中,所述解析工具至少包括:递归解析和所述DOM4J组合,递归解析和所述fastjson组合。
2.根据权利要求1所述的方法,其特征在于,根据需求信息为所述报文数据设置协议模板还包括:
基于所述数据需求和所述处理流程确定所述报文数据的处理工作量,其中,所述处理工作量至少包括:处理所述报文数据的占用内存信息,处理所述报文数据的消耗时间信息。
3.根据权利要求1所述的方法,其特征在于,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:
根据所述处理流程调用多个第一代码组件,其中,所述多个第一代码组件至少包括以下之一: JSON解析组件,JSON封装组件,XML解析组件,XML封装组件;
通过执行所述多个第一代码组件的业务逻辑更改所述报文数据的数据格式,得到所述目标数据;其中,所述数据格式至少包括:JSON格式,XML格式。
4.根据权利要求1所述的方法,其特征在于,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:
根据所述处理流程调用多个第二代码组件,其中,所述多个第二代码组件至少包括以下之一: JSON转换组件, XML转换组件;
通过执行所述多个第二代码组件的业务逻辑更改所述协议模板数据的数据映射关系,得到所述目标数据;其中,所述数据映射关系至少包括:第一JSON格式数据对应第二JSON格式数据,第一XML格式数据对应第二XML格式数据。
5.根据权利要求1所述的方法,其特征在于,通过调用多个代码组件处理所述协议模板数据,得到目标数据,包括:
按照所述处理流程对所述多个代码组件进行组合,得到组合后的多个代码组件;
将所述组合后的多个代码组件保存至代码块;
通过调用所述代码块执行所述组合后的多个代码组件对应的业务逻辑,得到所述目标数据。
6.一种数据处理装置,其特征在于,包括:
获取模块,用于获取报文数据;
设置模块,用于根据需求信息为所述报文数据设置协议模板,其中,所述协议模板包括:所述报文数据的数据需求,所述报文数据的处理流程;
生成模块,用于根据所述协议模板填充或解析所述报文数据,生成协议模板数据;
处理模块,用于通过调用多个代码组件处理所述协议模板数据,得到目标数据;
其中,所述处理流程包括:对所述报文数据进行封装;或解析;或先封装,再解析;或先解析,再封装;
其中,所述生成模块包括:筛选单元,用于基于数据需求对报文数据的多个字段信息进行筛选,得到有用字段信息;生成单元,用于若根据协议模板填充有用字段信息,生成第一协议模板数据;或,若根据协议模板解析有用字段信息,生成第二协议模板数据;
选择模块,用于在根据协议模板填充或解析报文数据,生成协议模板数据之后,若生成第一协议模板数据,基于第一协议模板数据选择封装工具,其中,封装工具至少包括:递归封装和Java XML框架DOM4J的组合,递归封装和Java 库fastjson的组合;或,若生成第二协议模板数据,基于第二协议模板数据选择解析工具,其中,解析工具至少包括:递归解析和DOM4J组合,递归解析和fastjson组合。
7.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
8.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010221949.XA CN111552838B (zh) | 2020-03-26 | 2020-03-26 | 数据处理方法及装置、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010221949.XA CN111552838B (zh) | 2020-03-26 | 2020-03-26 | 数据处理方法及装置、计算机设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111552838A CN111552838A (zh) | 2020-08-18 |
CN111552838B true CN111552838B (zh) | 2023-02-03 |
Family
ID=72007499
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010221949.XA Active CN111552838B (zh) | 2020-03-26 | 2020-03-26 | 数据处理方法及装置、计算机设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111552838B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112836475A (zh) * | 2020-11-24 | 2021-05-25 | 辽宁振兴银行股份有限公司 | 一种混合json和xml数据转为二维数组的方法 |
CN112788005B (zh) * | 2020-12-29 | 2023-05-23 | 福建正孚软件有限公司 | 一种软硬件结合的提高安全性的跨境传输方法和*** |
CN113049254A (zh) * | 2021-03-11 | 2021-06-29 | 一汽解放汽车有限公司 | 一种发动机试验台架运转控制方法、装置和计算机设备 |
CN112837164A (zh) * | 2021-03-31 | 2021-05-25 | 中国工商银行股份有限公司 | 定期存单流通方法及装置 |
CN115514712B (zh) * | 2021-06-22 | 2023-09-05 | 中移物联网有限公司 | 一种数据处理方法、装置、终端和网络侧设备 |
CN115103034A (zh) * | 2022-06-27 | 2022-09-23 | 京东科技信息技术有限公司 | 一种报文协议转换的方法和装置 |
CN115629762A (zh) * | 2022-10-11 | 2023-01-20 | 北京远舢智能科技有限公司 | 一种json数据处理方法、装置、电子设备及存储介质 |
CN116800868B (zh) * | 2023-08-29 | 2023-11-07 | 南京天创电子技术有限公司 | 基于xml的可视化通信协议解析方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108040040A (zh) * | 2017-11-30 | 2018-05-15 | 北京锐安科技有限公司 | 一种应用协议报文的自动化解析方法和装置 |
CN109358845A (zh) * | 2017-12-27 | 2019-02-19 | 广州Tcl智能家居科技有限公司 | 基于xmpp协议编写js代码的方法、工具及存储介质 |
CN109561104A (zh) * | 2018-12-28 | 2019-04-02 | 深圳市创梦天地科技有限公司 | 一种通信协议转换方法及装置 |
CN110351325A (zh) * | 2018-04-08 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关设备 |
-
2020
- 2020-03-26 CN CN202010221949.XA patent/CN111552838B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108040040A (zh) * | 2017-11-30 | 2018-05-15 | 北京锐安科技有限公司 | 一种应用协议报文的自动化解析方法和装置 |
CN109358845A (zh) * | 2017-12-27 | 2019-02-19 | 广州Tcl智能家居科技有限公司 | 基于xmpp协议编写js代码的方法、工具及存储介质 |
CN110351325A (zh) * | 2018-04-08 | 2019-10-18 | 腾讯科技(深圳)有限公司 | 一种数据处理方法及相关设备 |
CN109561104A (zh) * | 2018-12-28 | 2019-04-02 | 深圳市创梦天地科技有限公司 | 一种通信协议转换方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN111552838A (zh) | 2020-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111552838B (zh) | 数据处理方法及装置、计算机设备、存储介质 | |
CN109308224B (zh) | 跨平台数据通信、跨平台数据处理的方法、装置及*** | |
CN102447585B (zh) | 将网络配置协议响应报文转换为命令行的方法及装置 | |
CN112800095B (zh) | 一种数据处理方法、装置、设备及存储介质 | |
CN109670081B (zh) | 业务请求处理的方法及装置 | |
CN111241182A (zh) | 数据处理方法和装置、存储介质和电子装置 | |
CN109522139B (zh) | 一种数据表服务生成调用方法、装置、设备及存储介质 | |
CN112650529B (zh) | 可配置生成移动端app代码的***及方法 | |
CN111294235A (zh) | 数据处理方法、装置、网关及可读存储介质 | |
CN109062906B (zh) | 程序语言资源的翻译方法及装置 | |
CN105022619A (zh) | 一种代码数据处理方法及装置 | |
CN114416075A (zh) | 业务处理方法及装置 | |
CN111177243B (zh) | 数据的导出方法及装置、存储介质和电子装置 | |
CN111159226A (zh) | 指标查询方法及*** | |
CN112422450A (zh) | 计算机设备、服务请求的流量控制方法及装置 | |
CN115543479A (zh) | 一种适用于动态参数的接口调用解析方法及装置 | |
CN112487163B (zh) | 自动化流程的执行方法及其接口数据的获取方法、装置 | |
CN106648722A (zh) | 基于大数据的Flume接收端数据处理方法和装置 | |
CN113051202A (zh) | 接口适配方法、装置、电子设备和计算机可读存储介质 | |
CN112926008A (zh) | 生成表单页面的方法、装置、电子设备和存储介质 | |
CN111104122B (zh) | 一种xml业务逻辑映射到java业务逻辑的方法 | |
CN110188258B (zh) | 使用爬虫获取外部数据的方法及装置 | |
CN113591448B (zh) | 报表生成方法、装置及存储介质 | |
CN113485942A (zh) | 一种基于独立模块的自动化测试方法及装置 | |
CN114579132A (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 | ||
TA01 | Transfer of patent application right | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20220601 Address after: 518000 China Aviation Center 2901, No. 1018, Huafu Road, Huahang community, Huaqiang North Street, Futian District, Shenzhen, Guangdong Province Applicant after: Shenzhen Ping An medical and Health Technology Service Co.,Ltd. Address before: Room 12G, Area H, 666 Beijing East Road, Huangpu District, Shanghai 200001 Applicant before: PING AN MEDICAL AND HEALTHCARE MANAGEMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |