CN116451652A - 一种系统对接时数据格式快速转换方法及系统 - Google Patents
一种系统对接时数据格式快速转换方法及系统 Download PDFInfo
- Publication number
- CN116451652A CN116451652A CN202310417406.9A CN202310417406A CN116451652A CN 116451652 A CN116451652 A CN 116451652A CN 202310417406 A CN202310417406 A CN 202310417406A CN 116451652 A CN116451652 A CN 116451652A
- Authority
- CN
- China
- Prior art keywords
- data format
- conversion
- dimension reduction
- data
- fields
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000003032 molecular docking Methods 0.000 title claims abstract description 40
- 238000006243 chemical reaction Methods 0.000 claims abstract description 144
- 230000009467 reduction Effects 0.000 claims abstract description 74
- 230000008569 process Effects 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 238000003672 processing method Methods 0.000 claims description 7
- 230000005856 abnormality Effects 0.000 claims description 6
- 238000011161 development Methods 0.000 abstract description 5
- 238000012423 maintenance Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000006978 adaptation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013497 data interchange Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
- G06F40/154—Tree transformation for tree-structured or markup documents, e.g. XSLT, XSL-FO or stylesheets
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/12—Use of codes for handling textual entities
- G06F40/151—Transformation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/186—Templates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及数据格式转换技术领域,提供了一种系统对接时数据格式快速转换方法,包括以下步骤:S1:分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;S2:以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。通过核心递归的方式对复杂多维的数据格式进行降维,以此来减少开发成本,当数据格式需要改变的时候,也能快速进行调整,减少运维成本。
Description
技术领域
本发明涉及数据格式转换的技术领域,尤其涉及一种系统对接时数据格式快速转换方法及系统。
背景技术
对于各种软件系统来说,不可能一直只访问自己系统内部的数据,会经常需要在各个系统之间进行对接。如:内部系统经常需要对接各个外部系统。而通常来说,外部系统所需要的数据格式极其繁多,因此需要将外部系统的数据格式快速转成内部需要的格式,或者将内部系统格式数据快速转换成外部系统格式数据。
在现有技术中,由于内部系统或者外部系统的数据格式都有自己的定义,甚至数据格式涉及多种不同的维度,在做各个不同系统数据格式匹配时会比较复杂,且容易出错。
发明内容
针对上述问题,本发明的目的在于提供一种系统对接时数据格式快速转换方法及系统,通过核心递归的方式对复杂多维的数据格式进行降维,以此来减少开发成本,当数据格式需要改变的时候,也能快速进行调整,减少运维成本。
本发明的上述发明目的是通过以下技术方案得以实现的:
一种系统对接时数据格式快速转换方法,包括以下步骤:
S1:分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;
S2:以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。
进一步地,在将降维后的所述转换前数据格式的字段与所述模板进行匹配之后,还包括:
S3:当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常。
进一步地,在步骤S1中,将所述转换前数据格式和所述转换后数据格式通过所述核心递归方式进行降维,具体为:
按照数据格式的层级从第一层依次向深层次进行遍历;
若访问的当前层的节点名不是最后一级节点,则将所述当前层的所述节点名拼接到所述路径后面;
若访问的所述当前层的所述节点名是最后一级节点,则将所述当前层的所述节点名作为当前字段的所述字段名;
遍历完成后,形成以所述路径和所述字段名对应的所述二维数组的形式的数据格式。
进一步地,以所述路径和所述字段名对应的所述二维数组的形式的数据格式,还包括:
按照所述路径的深度进行排序;
所述字段名对应的所述路径的深度越深,所述字段名的排序越靠后。
进一步地,在步骤S2中,以降维后的所述转换后数据格式作为所述模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,还包括:
按照降维后的所述转换前数据格式与所述模板中字段的匹配关系,生成对应的匹配代码;
使用所述匹配代码,完成将所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。
进一步地,系统对接时数据格式快速转换方法,还包括:
S4:对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
进一步地,所述转换前数据格式和所述转换后数据格式采用包括json、xml在内的任意一种形式。
一种用于执行如上述的系统对接时数据格式快速转换方法的系统对接时数据格式快速转换系统,包括:
数据格式降维模块,用于分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;
字段匹配模块,用于以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段;
特殊处理模块,用于当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常;
数据推送模块,用于对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
一种计算机设备,包括存储器和一个或多个处理器,所述存储器中存储有计算机代码,所述计算机代码被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如上述的方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如上述的方法被执行。
与现有技术相比,本发明包括以下至少一种有益效果是:
(1)通过提供一种系统对接时数据格式快速转换方法,包括以下步骤:S1:分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;S2:以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。上述技术方案,通过核心递归的方式,对复杂多维的数据格式进行降维,以此来减少开发成本,当数据格式需要改变的时候,也能快速进行调整,减少运维成本。
(2)通过按照降维后的所述转换前数据格式与所述模板中字段的匹配关系,生成对应的匹配代码;使用所述匹配代码,完成将所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。上述技术方案,通过生成匹配代码的形式,完成对降维后的转换后数据格式字段的自动赋值。同时,在下次执行相同的数据格式转换时,无需再重新进行匹配。
附图说明
图1为本发明一种系统对接时数据格式快速转换方法的整体流程图;
图2为本发明转换前数据格式和转换后数据格式的举例示意图;
图3为本发明降维后生成的转换页面示意图;
图4为本发明将自己开发的系统中的数据格式转化成第三方系统中的数据格式的示意图;
图5为本发明将第三方系统中的数据格式存储到自己开发的系统中的示意图;
图6为本发明一种系统对接时数据格式快速转换系统的整体结构图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。
对于各种软件系统来说,不可能一直只访问自己系统内部的数据,会经常需要在各个系统之间进行对接。如:内部系统经常需要对接各个外部系统。而通常来说,外部系统所需要的数据格式极其繁多,因此需要将外部系统的数据格式快速转成内部需要的格式,或者将内部系统格式数据快速转换成外部系统格式数据。在现有技术中,由于内部系统或者外部系统的数据格式都有自己的定义,甚至数据格式涉及多种不同的维度,在做各个不同系统数据格式匹配时会比较复杂,且容易出错。
本发明通过采用了一种核心递归的方式对复杂多维的数据格式进行降维后再进行字段的匹配,使得不同系统数据间的对接变得简单快速,且不容易出错。
具体通过以下具体实施方式进行说明:
第一实施例
如图1所示,本实施例提供了一种系统对接时数据格式快速转换方法,包括以下步骤:
S1:分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录。
在软件系统日常开发的过程中,经常会涉及到多个不同系统间数据的传递和对接。但是不同系统间的数据格式均由不同的开发人员进行自行定义,因此,对于不同系统中存储的数据通常具备不同的数据存储格式。
若仅仅是数据字段名称不同,一个一个进行字段名称的匹配对应,相对还比较简单。但是,现在的系统的数据格式一般都是复杂多维的,每一个字段都具有不同的深度,不同的层级,需要一一对应起来就相对比较困难了,不仅开发工作量大,而且容易出错。
本发明对转换前数据格式和转换后数据格式在字段匹配前通过核心递归方式进行降维,降维后转换前数据格式和降维后数据格式均以路径和字段名的二维数组的形式存在,固定的只有路径和字段两个层级。后续匹配的时候就方便多了。
在本实施例中,将所述转换前数据格式和所述转换后数据格式通过所述核心递归方式进行降维,具体方法为:按照数据格式的层级从第一层依次向深层次进行遍历;若访问的当前层的节点名不是最后一级节点,则将所述当前层的所述节点名拼接到所述路径后面;若访问的所述当前层的所述节点名是最后一级节点,则将所述当前层的所述节点名作为当前字段的所述字段名;遍历完成后,形成以所述路径和所述字段名对应的所述二维数组的形式的数据格式。
举个例子来说,一个其他软件系统的数据格式为:
可以看到,上述举例中的软件系统的数据格式具备多个不同的层级,我们按照数据格式的层级从第一层依次向深层次进行遍历。当访问的当前层的节点名不是最后一级节点时,则将当前层的节点名拼接到路径后面(此处存在两种情况,若当前层为第一层时,则直接将当前的节点名作为路径,若当前层不为第一层时,在已经保存的路径后面追加节点名。如:遍历到orderL ines时,当前层为第一层,orderLines直接作为路径;遍历到orderLine时,当前层为第二层,在orderLines后面追加.orderLine作为路径)。当访问的当前层的节点名是最后一级节点,则将当前层的节点名作为当前字段的字段名(如:访问到节点名ownerCode时,判断不存在下一层次的节点名,为最深一层的节点名,则将ownerCode作为当前字段的字段名)。最终在将数据格式全部遍历完成之后,形成以路径和字段名对应的二维数据的形式的数据格式。
上述举例的其他软件系统的数据格式,形成的以路径和字段名对应的二维数据为:
进一步地,以所述路径和所述字段名对应的所述二维数组的形式的数据格式,还包括:按照所述路径的深度进行排序;所述字段名对应的所述路径的深度越深,所述字段名的排序越靠后。通过上述方式对二维数组进行排序,使得降维后的数据格式更加的简单清晰,规范化。
S2:以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。
在本实施例中,当对转换前数据格式和转换后数据格式都进行降维操作后,以降维后的转换后数据格式作为模块,将降维后的转换前数据格式的字段与模块中的字段进行匹配。
此外,需要说明的是若将自己开发的系统中的数据与第三方对接系统进行对接时,由于自己开发的系统可以直接访问对应的存储数据的数据表,且数据表一般都是通过m*n的二维数据进行存储数据的。因此在将自己开发的系统与第三方对接系统的数据进行对接时,自己开发的系统中的字段可以不采用上述步骤S1中的方法进行降维操作。对于数据格式的匹配,具体有以下三种情况:
(1)将自己开发的系统中的数据转换成第三方对接系统的业务数据格式
此种情况下,原数据格式是已知的(存储在数据表中的m*n的二维数组),即从数据库中查询出来的数据是一个规整的二维数组,而第三方对接系统的数据格式是未知的。我们将第三方对接系统的数据格式通过步骤S1中的方法,识别出数据格式中的路径和字段名,然后以第三方对接系统处理完成的包括路径和字段名的二维数组作为模板,去匹配自己开发的系统中数据表查询出来的字段。
(2)将第三方对接系统中的业务数据格式转成自己开发的系统中的数据格式
此种情况下,源数据格式是未知的,但是转换后数据格式是已知的(存储在数据表中的m*n的二维数组),此时将第三方对接系统的数据格式通过步骤S1中的方法,识别出数据格式中的路径和字段名,然后以自己开发的系统中的数据格式为模板,去匹配第三方对接系统处理完成的包括路径和字段名的二维数据中的字段。
(3)将未知的数据格式A转换成未知的数据格式B
此种情况下,实际为上述两种情况的变种(或拓展),首先分别将数据格式A和数据格式B分别采用步骤S1中的方法进行降维,降维后记录为A’和B’,A’和B’都是二维数组,由于B’是最终要转化的格式,我们将其作为模板,然后将A’中对应的字段值赋值给B’。
从上述三种情况可以看出,需要转换成哪一种数据格式,哪一种数据格式就是模板。在匹配过程中,将要转化的数据字段赋值给模板。匹配分为人工和自动匹配两种,当转化的双方为预先设置或历史匹配过的,则可以通过系统自动识别匹配;当转化双方数据格式先前并没有进行对接,需要异常人工处理,处理后,后续再遇到相似的,即可以直接处理。
S3:当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常。
具体的,在本实施例中,对于字段的匹配也不一定是一帆风顺的,转换前和转换后两个不同的系统中的字段很容易出现系统值不一致,字段类型等不一致的情况。此时就需要为这些出现匹配异常的字段,单独去编写一个特殊的处理方法(函数),去处理这些异常。例如:在转换前数据格式中存在字段platform,但是转换后数据格式中不存在,可以写一个针对platform字段的处理函数进行处理。
进一步地,对于转换前数据格式与转换后数据格式之间的匹配关系的建立。可以通过编写或者自动生成一段匹配代码来实现。使用所述匹配代码,完成将所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。对于第三方系统的数据格式可以是包括json、xml在内的任意一种形式。
S4:对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
具体的,在将赋值后的降维后的转换后数据格式发送给转换后数据格式对应的对接系统之前,需要依据二维数组中保存的路径和字段名恢复出对接系统原始的转换后数据格式。恢复完成后,将包含数值的转换后数据格式推送到对应的对接系统。
第二实施例
本实施例提供了基于第一实施例中的方法步骤进行系统对接时数据格式快速转换的一种具体实施例。具体举例如下:
如图2所示,提供了转换前数据格式(转化前数据结构)和转换后数据格式(转化后数据结构)的一个举例。点击转换按钮,系统内部自动对转换前数据格式和转换后数据格式降维。降维后生成如图3所示的转换界面。在图2中的第一个筛选框中,可以通过下拉框选择转换前数据格式中的字段。当然也可以使用第二个筛选框选择使用函数规则,来进行字段数据格式转换。例如选择了固定值,并在第三列中输入固定值之后,则转换后数据格式中对应的字段可以直接生成固定值,若有其他选项,也可以有其他的规则函数来处理,非常的灵活和方便。在保存之后,即可以生成对应的匹配代码,从而可以将转换前数据格式转化成转换后数据格式。
如图4所示,展示的是将自己开发的系统中的数据格式转化成第三方系统中的数据格式。由于我们自己开发的系统中数据库去处的数据格式已经固定,因此只需要粘贴需要转换出去的数据格式,然后点击转化即可。剩余的配置方式即可参考数据互转,只需要选择数据库中的字段名,选择规则函数即可,配置方式同上。
如图5所示,展示的将第三方系统中的数据格式存储到自己开发的系统中。由于自己开发的系统的数据库要求的格式已定,因此只需粘贴第三方请求的数据格式即可,然后在配置时,选择要存储的字段即可,其余规则函数同上。
以下为一种生成匹配代码的具体举例:
public function assembleData($data){
$new data.arr=array();
$new_data_arr['deliveryOrder']['deliveryOrderCode']=$data[0]['deliveryOrderCode'];
$new_data_arr['deliveryOrder']['deliveryOrderId']=$data[0]['deliveryOrderId'];
$new_data_arr['deliveryOrder']['warehouseCode']=$data[0]['warehouseCode'];
$new_data_arr['deliveryOrder']['orderType']=$data[0]['orderType'];
$new_data_arr['deliveryOrder']['logisticsCode']=$data[0]['logisticsCode'];
$new_data_arr['deliveryOrder']['logisticsName']=$data[0]['logisticsName'];
$new_data_arr['deliveryOrder']['orderConfirmTime']=$data[0]['orderConfirmTime'];
$new_data_arr['deliveryOrder']['outBizCode']=$data[0]['outBizCode'];
foreach($dataas$key=>$row){
$new_data_arr['deliveryOrder']['orderLines']['orderLine'][$key]['orderLineNo']=$row['orderLineNo'];
$new_data_arr['deliveryOrder']['orderLines']['orderLine'][$key]['itemCode']=$row['itemCode'];
$new_data_arr['deliveryOrder']['orderLines']['orderLine'][$key]['itemName']=$row['itemName'];
$new_data_arr['deliveryOrder']['orderLines']['orderLine'][$key]['inventoryType']=$row['inventoryType'];
$new_data_arr['deliveryOrder']['orderLines']['orderLine'][$key]['actualQty']=$row['actualQty'];
}
return$new_data_arr;
}
第二实施例
如图6所示,本实施例提供了一种用于执行如第一实施例中的系统对接时数据格式快速转换方法的系统对接时数据格式快速转换系统,包括:
数据格式降维模块1,用于分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;
字段匹配模块2,用于以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段;
特殊处理模块3,用于当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常;
数据推送模块4,用于对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
一种计算机可读存储介质,计算机可读存储介质存储有计算机代码,当计算机代码被执行时,如上述方法被执行。本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁盘或光盘等。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
应当说明的是,上述实施例均可根据需要自由组合。以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种系统对接时数据格式快速转换方法,其特征在于,包括以下步骤:
S1:分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;
S2:以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。
2.根据权利要求1所述的系统对接时数据格式快速转换方法,其特征在于,在将降维后的所述转换前数据格式的字段与所述模板进行匹配之后,还包括:
S3:当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常。
3.根据权利要求1所述的系统对接时数据格式快速转换方法,其特征在于,在步骤S1中,将所述转换前数据格式和所述转换后数据格式通过所述核心递归方式进行降维,具体为:
按照数据格式的层级从第一层依次向深层次进行遍历;
若访问的当前层的节点名不是最后一级节点,则将所述当前层的所述节点名拼接到所述路径后面;
若访问的所述当前层的所述节点名是最后一级节点,则将所述当前层的所述节点名作为当前字段的所述字段名;
遍历完成后,形成以所述路径和所述字段名对应的所述二维数组的形式的数据格式。
4.根据权利要求3所述的系统对接时数据格式快速转换方法,其特征在于,以所述路径和所述字段名对应的所述二维数组的形式的数据格式,还包括:
按照所述路径的深度进行排序;
所述字段名对应的所述路径的深度越深,所述字段名的排序越靠后。
5.根据权利要求1所述的系统对接时数据格式快速转换方法,其特征在于,在步骤S2中,以降维后的所述转换后数据格式作为所述模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,还包括:
按照降维后的所述转换前数据格式与所述模板中字段的匹配关系,生成对应的匹配代码;
使用所述匹配代码,完成将所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段。
6.根据权利要求1所述的系统对接时数据格式快速转换方法,其特征在于,还包括:
S4:对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
7.根据权利要求1所述的系统对接时数据格式快速转换方法,其特征在于,还包括:
所述转换前数据格式和所述转换后数据格式采用包括json、xml在内的任意一种形式。
8.一种用于执行如权利要求1-7所述的系统对接时数据格式快速转换方法的系统对接时数据格式快速转换系统,其特征在于,包括:
数据格式降维模块,用于分别获取转换前数据格式和转换后数据格式,将所述转换前数据格式和所述转换后数据格式通过核心递归方式进行降维,降维后形成以路径和字段名的二维数组的形式对所述转换前数据格式和所述转换后数据格式的字段进行记录;
字段匹配模块,用于以降维后的所述转换后数据格式作为模板,将降维后的所述转换前数据格式的字段与所述模块进行匹配,将降维后的所述转换前数据格式中的数据赋值给降维后的所述转换后数据格式的字段;
特殊处理模块,用于当降维后的所述转换前数据格式的字段与所述模板中对应字段存在包括系统值不一致、字段类型不一致在内的异常时,为当前字段设置特殊处理方法去处理所述异常;
数据推送模块,用于对数据赋值后的降维后的所述转换后数据格式,按照所述路径拼凑成原始的所述转换后数据格式,推送给所述转换后数据格式对应的对接系统。
9.一种计算机设备,包括存储器和一个或多个处理器,所述存储器中存储有计算机代码,所述计算机代码被所述一个或多个处理器执行时,使得所述一个或多个处理器执行如权利要求1至7中任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如权利要求1至7中任一项所述的方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310417406.9A CN116451652A (zh) | 2023-04-19 | 2023-04-19 | 一种系统对接时数据格式快速转换方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310417406.9A CN116451652A (zh) | 2023-04-19 | 2023-04-19 | 一种系统对接时数据格式快速转换方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116451652A true CN116451652A (zh) | 2023-07-18 |
Family
ID=87123313
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310417406.9A Pending CN116451652A (zh) | 2023-04-19 | 2023-04-19 | 一种系统对接时数据格式快速转换方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116451652A (zh) |
-
2023
- 2023-04-19 CN CN202310417406.9A patent/CN116451652A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11782892B2 (en) | Method and system for migrating content between enterprise content management systems | |
CN112015413A (zh) | 一种免编程数据可视化Web展示系统及其实现方法 | |
CN111818175B (zh) | 企业服务总线配置文件生成方法、装置、设备和存储介质 | |
CN112860777B (zh) | 数据处理方法、装置及设备 | |
CN114925084B (zh) | 分布式事务处理方法、系统、设备及可读存储介质 | |
CN106547646B (zh) | 一种数据备份及恢复方法、数据备份及恢复装置 | |
US11003635B2 (en) | Database scheme for storing generic data | |
US10055422B1 (en) | De-duplicating results of queries of multiple data repositories | |
CN115599764A (zh) | 一种表格数据的迁移方法、设备及介质 | |
CN112052157B (zh) | 测试报文的构造方法、装置及系统 | |
CN111522881B (zh) | 业务数据处理方法、装置、服务器及存储介质 | |
CN110989999A (zh) | 代码生成方法、装置、电子设备及介质 | |
CN116451652A (zh) | 一种系统对接时数据格式快速转换方法及系统 | |
CN116400914A (zh) | 一种基于数据模型快速构建web应用的方法 | |
US11442758B2 (en) | Integration flow execution renew | |
CN112463896B (zh) | 档案编目数据处理方法、装置、计算设备及存储介质 | |
CN111143450A (zh) | 导入数据的方法和装置 | |
CN112148710B (zh) | 微服务分库方法、系统和介质 | |
US20090276603A1 (en) | Techniques for efficient dataloads into partitioned tables | |
CN117827802B (zh) | 一种基于Hbase的数据处理系统、方法及装置 | |
CN117453964B (zh) | 基于模板的数据结构获取和目标模板生成方法及装置 | |
CN113553329B (zh) | 数据集成系统和方法 | |
US20230325587A1 (en) | Table column operations for spreadsheets | |
CN114706913A (zh) | 数据写入方法、系统、终端设备及计算机可读存储介质 | |
CN115203237A (zh) | 基于hive元数据生成查询sql的方法、装置及设备 |
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 |