CN114584631A - 一种报文的处理方法及装置、电子设备、存储介质 - Google Patents
一种报文的处理方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN114584631A CN114584631A CN202210196618.4A CN202210196618A CN114584631A CN 114584631 A CN114584631 A CN 114584631A CN 202210196618 A CN202210196618 A CN 202210196618A CN 114584631 A CN114584631 A CN 114584631A
- Authority
- CN
- China
- Prior art keywords
- rule
- target
- value
- current
- sub
- 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.)
- Granted
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 10
- 238000006243 chemical reaction Methods 0.000 claims abstract description 108
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000012545 processing Methods 0.000 claims description 41
- 238000004590 computer program Methods 0.000 claims description 6
- 230000008569 process Effects 0.000 description 13
- 230000009471 action Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/08—Protocols for interworking; Protocol conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种报文的处理方法及装置、电子设备、存储介质,所述方法包括:获取待处理报文;从预先配置的多个转换规则中确定出与待处理报文的类型对应的各个目标转换规则;每个目标转换规则包括多个有序的子规则;分别针对每个目标转换规则,按照各个子规则在目标转换规则中的顺序,将目标转换规则中的第N个子规则作为当前子规则;N的初始值为1;利用当前子规则指示的待处理报文中的各个当前参考值与当前子规则进行匹配;若各个当前参考值与当前子规则匹配,根据当前子规则确定出目标值;基于目标值确定最终目标值,并输出最终目标值;若各个当前参考值与当前子规则不匹配,将N加1并返回将目标转换规则中的第N个子规则作为当前子规则。
Description
技术领域
本申请涉及报文数据处理技术领域,特别涉及一种报文的处理方法及装置、电子设备、存储介质。
背景技术
在事务往来的过程中,进程需要多方进行报文通信,例如,在进行财政支付和收入电子化业务时,需要多方进行报文通讯,以保证业务正确办理。
由于报文格式种类繁多,各类报文所包含节点和基点取值规则也不同,所以在收发报文时需要对各个节点的取值进行转换处理,或者根据节点至生成特定的返回值。由于不同的事务往来的特定有区别,所以当前对报文节点取值的转换方式,主要都是基于自身需求的转换处理方式,单独开发相应的程序,然后该程序进行报文节点至的处理。
但是这种方式不仅成本高,而且无法快速响应需求变化或者进行临时应急。
发明内容
基于上述现有技术的不足,本申请提供了一种报文的处理方法及装置、电子设备、存储介质,以解决现有技术无法快速响应需求变化的问题。
为了实现上述目的,本申请提供了以下技术方案:
本申请第一方面提供了一种报文的处理方法,包括:
获取待处理报文;
从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则;其中,每个所述目标转换规则包括多个有序的子规则;
分别针对每个所述目标转换规则,按照各个所述子规则在所述目标转换规则中的顺序,将所述目标转换规则中的第N个子规则作为当前子规则;其中,N的初始值为1;
利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配;
若各个所述当前参考值与所述当前子规则匹配,则根据所述当前子规则确定出目标值;
基于所述目标值确定最终目标值,并输出所述最终目标值;
若各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回执行所述将所述目标转换规则中的第N个子规则作为当前子规则。
可选地,在上述提供的报文的处理方法中,所述从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则,包括:
确定出预先设置的与所述待处理报文的类型对应的各个规则标识;
从预先配置的各个所述转换规则中,读取出各个所述规则标识对应的所述转换规则,作为所述目标转换规则。
可选地,在上述提供的报文的处理方法中,所述利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配,包括:
分别针对所述当前子规则中的每组参考信息,将所述待处理报文中符合所述参考信息中的参考名类型和参考名字段的参数,确定为所述参考信息对应的所述当前参考值;
将所述参考信息对应的所述当前参考值与所述参考信息中的对比值,按照所述参考信息中的对比类型进行拼装,得到所述当前参考值对应的对比规则;
将各个所述当前参考值对应的对比规则按照所述当前子规则中的对比结果表达式进行组合,得到当前对比结果;
判断所述当前对比结果是否为真;
若所述当前对比结果为真,则确定各个所述当前参考值与所述当前子规则匹配;
若所述当前对比结果为假,则确定各个所述当前参考值与所述当前子规则不匹配。
可选地,在上述提供的报文的处理方法中,所述根据所述当前子规则确定目标值,包括:
根据所述当前子规则中的各组目标信息中的目标名类型以及目标名字段,确定各组所述目标信息对应的目标名取值;
针对每组所述目标信息,若所述目标信息中的所述目标取值类型字段值为目标名取值,则将所述目标信息对应的目标名取值确定为目标值;
若所述目标信息中的所述目标取值类型字段值为固定值,则将所述目标信息中的目标取值字段值确定为目标值;
若所述目标信息中的所述目标取值类型字段值为正则表达式,则利用所述目标表达式对所述目标信息对应的目标名取值进行处理,得到目标值。
可选地,在上述提供的报文的处理方法中,所述基于所述目标值确定最终目标值,并输出所述最终目标值,包括:
若所述目标值的数量为多个,则根据所述当前子规则中的拼装规则,将各个所述目标值进行拼接得到最终目标值;
若所述目标值的数量为单个,则将所述目标值确定为所述最终目标值;
将所述最终目标值输出。
本申请第二方面提供了一种报文的处理装置,包括:
获取单元,用于获取待处理报文;
规则确定单元,用于从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则;其中,每个所述目标转换规则包括多个有序的子规则;
子规则选取单元,用于分别针对每个所述目标转换规则,按照各个所述子规则在所述目标转换规则中的顺序,将所述目标转换规则中的第N个子规则作为当前子规则;其中,N的初始值为1;
匹配单元,用于利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配;
目标值确定单元,用于在各个所述当前参考值与所述当前子规则匹配时,根据所述当前子规则确定出目标值;
结果确定单元,基于所述目标值确定最终目标值,并输出所述最终目标值;
返回单元,用于在各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回所述子规则选取单元执行所述将所述目标转换规则中的第N个子规则作为当前子规则。
可选地,在上述提供的报文的处理装置中,所述规则确定单元,包括:
标识确定单元,用于确定出预先设置的与所述待处理报文的类型对应的各个规则标识;
读取单元,用于从预先配置的各个所述转换规则中,读取出各个所述规则标识对应的所述转换规则,作为所述目标转换规则。
可选地,在上述提供的报文的处理装置中,所述匹配单元,包括:
参考值确定单元,用于分别针对所述当前子规则中的每组参考信息,将所述待处理报文中符合所述参考信息中的参考名类型和参考名字段的参数,确定为所述参考信息对应的所述当前参考值;
规则拼装单元,用于将所述参考信息对应的所述当前参考值与所述参考信息中的对比值,按照所述参考信息中的对比类型进行拼装,得到所述当前参考值对应的对比规则;
组合单元,用于将各个所述当前参考值对应的对比规则按照所述当前子规则中的对比结果表达式进行组合,得到当前对比结果;
第一判断单元,用于判断所述当前对比结果是否为真;
第一确定单元,用于在所述当前对比结果为真时,则确定各个所述当前参考值与所述当前子规则匹配;
第二确定单元,用于在所述当前对比结果为假时,确定各个所述当前参考值与所述当前子规则不匹配。
可选地,在上述提供的报文的处理装置中,所述目标值确定单元,包括:
目标名取值确定单元,用于根据所述当前子规则中的各组目标信息中的目标名类型以及目标名字段,确定各组所述目标信息对应的目标名取值;
第一目标值确定单元,用于针对每组所述目标信息,当所述目标信息中的所述目标取值类型字段值为目标名取值时,将所述目标信息对应的目标名取值确定为目标值;
第二目标值确定单元,用于在所述目标信息中的所述目标取值类型字段值为固定值时,将所述目标信息中的目标取值字段值确定为目标值;
第三目标值确定单元,用于在所述目标信息中的所述目标取值类型字段值为正则表达式时,利用所述目标表达式对所述目标信息对应的目标名取值进行处理,得到目标值。
可选地,在上述提供的报文的处理装置中,所述结果确定单元,包括:
目标值拼装单元,用于若所述目标值的数量为多个,则根据所述当前子规则中的拼装规则,将各个所述目标值进行拼接得到最终目标值;
最终目标值确定单元,用于若所述目标值的数量为单个,则将所述目标值确定为所述最终目标值;
输出单元,用于将所述最终目标值输出。
本申请第三方面提供了一种电子设备,包括:
存储器和处理器;
其中,所述存储器用于存储程序;
所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如上述任意一项所述的报文的处理方法。
本申请第四方面提供了一种计算机存储介质,用于存储计算机程序,所述计算机程序被执行时,用于实现如上述任意一项所述的报文的处理方法。
本申请提供的一种报文的处理方法,获取待处理报文,然后从预先配置的多个转换规则中确定出与待处理报文的类型对应的各个目标转换规则。其中,每个目标转换规则包括多个有序的子规则,所以可以分别针对每个目标转换规则,按照各个子规则在所述目标转换规则中的顺序,将目标转换规则中的第N个子规则作为当前子规则。其中,N的初始值为1。然后,利用当前子规则指示的待处理报文中的各个当前参考值与当前子规则进行匹配,若各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回执行所述将所述目标转换规则中的第N个子规则作为当前子规则,直至找到匹配的当前子规则。当各个当前参考值与当前子规则匹配时,根据当前子规则确定出目标值,最后基于目标值确定最终目标值,并输出最终目标值,完成报文参数的转换,从而基于可配置的规则实现报文的节点的转换,进而可以通过配置不同的规则实现不同类型的报文的转换,不需要针对每种报文进行单独开发,并且也能快速响应需求变化或者进行临时应急。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种报文的处理方法的流程图;
图2为本申请实施例提供的一种确定目标转换规则的流程图;
图3为本申请实施例提供的一种与当前子规则进行匹配的方法的流程图;
图4为本申请实施例提供的一种确定出目标值的方法的流程图;
图5为本申请实施例提供的一种基于目标值确定最终目标值并输出的方法的流程图;
图6为本申请实施例提供的一种报文的处理装置的结构示意图;
图7为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请实施例提供了一种报文的处理方法,如图1所示,包括以下步骤:
S101、获取待处理报文。
其中,在进行报文收发,需要对报文进行处理,将其作为待处理报文执行后续的步骤。
S102、从预先配置的多个转换规则中确定出与待处理报文的类型对应的各个目标转换规则。
其中,每个目标转换规则包括多个有序的子规则。
由于不同类型的报文所包含的节点以及节点的取值规则可能会不同,所以需要采用不同的方式,进行参数的转换。因此,在本申请实施例中,预先根据不同的类型的报文配置了对应的转换规则。因此,在获取到待处理报文后,根据待处理报文的类型,将其对应的转换规则确定为目标转换规则。
需要说明的是,在本申请实施例中,节点指一组数据中的单个信息,例如,XML格式的数据中,每个标签就是一个节点。
还需要说明的是,由于参数通常需要有多个规则进行处理,一般至少都有两个,所以在本申请实施例中,一个转换规则包括有多个子规则。例如,判断一个参数是否大于50,当大于50时,需要进行一个相应的处理,当不大于50时则需要进行另一种方式的处理,所以需要有两个相应的子规则。
考虑到参数只会满足其中一个子规则,而不同的子规则的处理存在一定的先后顺序,因此目标转换规则中包括各个子规则是设置有固定的顺序的。
可选地,在本申请另一实施例中,步骤S102的一种具体实施方式,如图2所示,包括:
S201、确定出预先设置的与待处理报文的类型对应的各个规则标识。
需要说明的是,为了便于管理和使用转换规则,在本申请实施例中,为每个转换规则设置了唯一的规则标识,并且建立各个类型的报文与其对应的转换规则的规则标识的对应关系,因此在可以根据待处理报文的类型,确定出该类型对应的各个规则标识,然后执行步骤S202。
S202、从预先配置的各个转换规则中,读取出各个规则标识对应的转换规则,作为目标转换规则。
S103、分别针对每个目标转换规则,按照各个子规则在目标转换规则中的顺序,将目标转换规则中的第N个子规则作为当前子规则。
其中,N的初始值为1。
由于不同的目标转换规则是针对不同的参数的,因此可以分别针对每个目标转换规则执行后续的转换处理过程。
需要说明的是,由于目标转换规则中的各个子规则是存在处理顺序的,因此需要依次针对每个子规则进行处理,因此在本申请实施例中,依次将子规则作为当前子规则,执行后续步骤。初始则是对第一个子规则进行处理,因此N的初始值为1。
S104、利用当前子规则指示的待处理报文中的各个当前参考值与当前子规则进行匹配。
具体的,根据当前子规则中的信息的指示,从待处理报文中确定出需要进行匹配的参数,将其作为当前参考值。然后判断当前参考值是否满足当前子规则的条件。
可选地,在本申请另一实施例中,步骤S104的一种具体实施方式,如图3所示,包括:
S301、分别针对当前子规则中的每组参考信息,将待处理报文中符合参考信息中的参考名类型和参考名字段的参数,确定为参考信息对应的当前参考值。
需要说明的是,在本申请实施例中,在子规则中可以设置有多组参考信息,以针对不同的参数进行处理,因此在本申请实施例中,针对每组参考信息执行步骤S301和步骤S302。其中,参考信息中包括有参考名类型、参考名字段、对比类型、对比值等。
参考名类型为待对比的数据的类型,例如XML节点、json节点等。参考名字段则是与参考名类型相关的字段。所以可以根据参考名类型和参考名字段,确定出当前参考值,例如,例如参考名类型为XML节点时,参考名字段配置成某个节点的名称,则程序将使用XML文件的该节点的值作为参考值。
对比类型指的是与参考值进行比较的方法的类型,例如大小比较、正则表达式比较等。对比值则为需要比较的数据,其与对比类型是相匹配的。
S302、将该参考信息对应的当前参考值与参考信息中的对比值,按照参考信息中的对比类型进行拼装,得到当前参考值对应的对比规则。
需要说明的是,对比类型指的是与参考值进行比较的方法的类型,而对比值则为需要与参考值比较的数据,所以将该参考信息对应的当前参考值与参考信息中的对比值,按照参考信息中的对比类型进行拼装,即可以得到对比的表达式,即为当前参考值对应的对比规则,例如,当前参考值为A,比对值为B,比对类型为大于,则拼装得到比对规则就是:A>B。
S303、将各个当前参考值对应的对比规则按照当前子规则中的对比结果表达式进行组合,得到当前对比结果。
由于当前子规则可能会存在多组参考信息,进而会得到多个对比规则,而最终的对比结果只存在一个,所以在本申请实施例中,在子规则中的对比结果表达式,其用于将各个对比规则进行组合,得到一个总的表达式,即对比结果。例如,例如比对规则1是A>B,比对规则2是C<D,比对结果表达式是“1or2”,则组合得到的比对结果就是“(A>B)or(C<D)”。
当然,若是当前子规则只存在一组参考信息,则相应的对比规则只包括一个,则此时对比结果表达式即为该对比规则,即直接将该对比规则确定为当前对比结果。
S304、判断当前对比结果是否为真。
其中,若判断出当前对比结果为真,则执行步骤S305。若判断出当前对比结果为假时,则执行步骤S306。
S305、确定各个当前参考值与当前子规则匹配。
S306、确定各个当前参考值与当前子规则不匹配。
S105、判断各个当前参考值是否与当前子规则匹配。
具体的,根据步骤S104的匹配结果,确定各个当前参考值是否与当前子规则匹配,若各个当前参考值是否与当前子规则不匹配,则需要对下一个子规则进行处理,所以此时执行步骤S106,并返回执行步骤S103。若判断各个当前参考值与当前子规则匹配,则需要基于该当前子规则确定目标值,不需要再对其他的子规则进行处理了,所以此时执行步骤S107。
S106、将N加1。
需要说明的是,在配置转换规则时,已经进行了全面的考虑,所以转换规则中的子规则中必然会有一个子规则会匹配成功,所以即使不判断是否轮询完了所有的子规则,也不会出现死循环的情况。当然可选地,为了进一步确定不出现执行的无限循环,也可以在执行步骤S106之前,先判断当前子规则是否为转换规则的最后一个子规则,若是则结束针对该转换规则的处理流程,并反馈提示信息。而在判断出当前子规则不是转换规则的最后一个子规则时,才执行步骤S106,并在执行步骤S106之后,返回执行步骤S103,以针对下一个子规则进行处理。
S107、根据当前子规则确定出目标值。
需要说明的是,在当前子规则中还配置有如何确定目标值的方式,或者直接在当前子规则中设置有目标值,所以在确定参数符合当前子规则后,则根据当前子规则,确定出目标值。
可选地,当步骤S104的具体实施方式如图3所示时,相应的,在该实施例中,步骤S107的一种具体实施方式,如图4所示,包括:
S401、根据当前子规则中的各组目标信息中的目标名类型以及目标名字段,确定各组目标信息对应的目标名取值。
需要说明的是,在本申请实施例中,当前子规则可以包括有多组目标信息,每组目标信息用于确定一个目标值。可选地,通常目标信息的组数与参考信息的组数相等,并且存在一一对应的关系。
同理,目标名类型指的是输入的类型,通常与参考名类型相一致。目标名字段值,则是符合目标名类型的一个字段,与参考名字段类似。所以,根据目标名类型以及目标名字段,确定出一个目标名取值。其中,目标名取值可能会作为目标值输出,并且其可以是待处理报文中的数据,即可以理解为当待处理报文中的节点A满足当前子规则时,将其转换为待处理报文中的节点B。
S402、针对每组目标信息,判断该目标信息中的目标取值类型字段值是否为目标名取值。
需要说明的是,在目标信息中还包括有目标取值类型字段值,其规定了目标值的取值类型,根据相应的类型从目标信息中选取相应的数据作为目标值。可选地,在本申请实施例中,目标取值类型字段值包括固定值、目标名字段值以及正则表达式三种。当然,根据需求的不同,还可以设置有其他的类型。
因此在本申请实施例中,若目标信息中的目标取值类型字段值为目标名取值,则执行步骤S403。若目标信息中的目标取值类型字段值不为目标名取值,则执行步骤S404。
S403、将目标信息对应的目标名取值确定为目标值。
S404、判断该目标信息中的目标取值类型字段值是否为固定值。
其中,若判断出该目标信息中的目标取值类型字段值为固定值,则执行步骤S405。若该目标信息中的目标取值类型字段值不为固定值,则说明其是正则表达式,所以此时执行步骤S406。
S405、将目标信息中的目标取值字段值确定为目标值。
需要说明的是,目标取值字段值为在目标信息中设定的一个固定值,所以当判断出该目标信息中的目标取值类型字段值为固定值时,将其确定为目标值。
S406、利用目标表达式对目标信息对应的目标名取值进行处理,得到目标值。
需要说明的是,上述步骤S401~步骤S406的执行顺序,仅是其中一种可选的方式,也可以采用其他的方式,只要根据目标取值类型字段值,执行相应的步骤确定目标值均可行。
S108、基于目标值确定最终目标值,并输出最终目标值。
具体的,将目标值作为最终目标值输入,或者根据当前子规则中的处理信息将目标值进行进一步处理后,得到最终目标值,并将最终目标值输入,从而完整节点的转换。
可选地,在本申请另一实施例中,步骤S108的一种具体实施方式,如图5所示,包括:
S501、判断目标值的数量是否为多个。
需要说明的是,目标值可能会存在多个,例如,当存在多组目标信息时,则会存在多个目标值等,而输出的最终目标值只能有一个,所以若判断出目标值的数量为多个,则执行步骤S502。若判断出目标值的数量为单个,则执行步骤S503。
S502、根据当前子规则中的拼装规则,将各个目标值进行拼接得到最终目标值。
S503、将目标值确定为最终目标值。
S504、将最终目标值输出。
所以综上所述,对于本申请实施例提供的方法,假如假设有一类XML报文,含有1个节点。现需要根据这个报文的节点内容生成一个数值,生成规则为:若节点1的值大于50则返回1,否则返回0。则针对该节点1,可以配置包括两个子规则的转换规则。两个子规则的配置信息可以自如下表1和表2所示。
表1
要素名称 | 要素内容 |
参考名类型1 | XML节点 |
参考名字段1 | 节点1的名称 |
参考值1 | 从XML报文里获取到节点1的值 |
比对类型1 | 大于 |
比对值1 | 50 |
比对规则1 | 节点1的值>50 |
比对结果表达式 | 比对规则1 |
目标名类型 | 固定值 |
目标名字段值 | 1 |
目标名取值 | 固定值1 |
目标取值类型字段值 | 取目标名字段值 |
目标取值字段值 | 直接返回“目标名取值” |
目标值 | 1 |
最终目标值拼装规则 | 目标值 |
表2
所以根据两个子规则就可以进行相应的转化。例如,假如节点1的值为20,则在转换时,先执行表1对应的子规则,获取到参考值20,对比规则是:20>50,显然该对比规则为假,即与该子规则不匹配,所以针对表2对应的子规则进行匹配。参考值还是20,对比规则小于或等于50,显然是满足的,则根据该子规则中的信息确定的目标值0,而由于只存在一个目标值,所以最终目标值为0。
本申请实施例提供了一种报文的处理方法,获取待处理报文,然后从预先配置的多个转换规则中确定出与待处理报文的类型对应的各个目标转换规则。其中,每个目标转换规则包括多个有序的子规则,所以可以分别针对每个目标转换规则,按照各个子规则在所述目标转换规则中的顺序,将目标转换规则中的第N个子规则作为当前子规则。其中,N的初始值为1。然后,利用当前子规则指示的待处理报文中的各个当前参考值与当前子规则进行匹配,若各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回执行所述将所述目标转换规则中的第N个子规则作为当前子规则,直至找到匹配的当前子规则。当各个当前参考值与当前子规则匹配时,根据当前子规则确定出目标值,最后基于目标值确定最终目标值,并输出最终目标值,完成报文参数的转换,从而基于可配置的规则实现报文的节点的转换,进而可以通过配置不同的规则实现不同类型的报文的转换,不需要针对每种报文进行单独开发,并且也能快速响应需求变化或者进行临时应急。
本申请另一实施例提供了一种报文的处理装置,如图6所示,包括:
获取单元601,用于获取待处理报文。
规则确定单元602,用于从预先配置的多个转换规则中确定出与待处理报文的类型对应的各个目标转换规则。
其中,每个目标转换规则包括多个有序的子规则。
子规则选取单元603,用于分别针对每个目标转换规则,按照各个子规则在目标转换规则中的顺序,将目标转换规则中的第N个子规则作为当前子规则。
其中,N的初始值为1。
匹配单元604,用于利用当前子规则指示的待处理报文中的各个当前参考值与当前子规则进行匹配。
目标值确定单元605,用于在各个当前参考值与当前子规则匹配时,根据当前子规则确定出目标值。
结果确定单元606,基于目标值确定最终目标值,并输出最终目标值。
返回单元607,用于在各个当前参考值与当前子规则不匹配,则将N加1并返回子规则选取单元603执行将目标转换规则中的第N个子规则作为当前子规则。
可选地,在本申请另一实施例提供的报文的处理装置中,规则确定单元,包括:
标识确定单元,用于确定出预先设置的与待处理报文的类型对应的各个规则标识。
读取单元,用于从预先配置的各个转换规则中,读取出各个规则标识对应的转换规则,作为目标转换规则。
可选地,在本申请另一实施例提供的报文的处理装置中,匹配单元,包括:
参考值确定单元,用于分别针对当前子规则中的每组参考信息,将待处理报文中符合参考信息中的参考名类型和参考名字段的参数,确定为参考信息对应的当前参考值。
规则拼装单元,用于将参考信息对应的当前参考值与参考信息中的对比值,按照参考信息中的对比类型进行拼装,得到当前参考值对应的对比规则。
组合单元,用于将各个当前参考值对应的对比规则按照当前子规则中的对比结果表达式进行组合,得到当前对比结果。
第一判断单元,用于判断当前对比结果是否为真。
第一确定单元,用于在当前对比结果为真时,则确定各个当前参考值与当前子规则匹配。
第二确定单元,用于在当前对比结果为假时,确定各个当前参考值与当前子规则不匹配。
可选地,在本申请另一实施例提供的报文的处理装置中,目标值确定单元,包括:
目标名取值确定单元,用于根据当前子规则中的各组目标信息中的目标名类型以及目标名字段,确定各组目标信息对应的目标名取值。
第一目标值确定单元,用于针对每组目标信息,当目标信息中的目标取值类型字段值为目标名取值时,将目标信息对应的目标名取值确定为目标值。
第二目标值确定单元,用于在目标信息中的目标取值类型字段值为固定值时,将目标信息中的目标取值字段值确定为目标值。
第三目标值确定单元,用于在目标信息中的目标取值类型字段值为正则表达式时,利用目标表达式对目标信息对应的目标名取值进行处理,得到目标值。
可选地,在本申请另一实施例提供的报文的处理装置中,结果确定单元,包括:
目标值拼装单元,用于若目标值的数量为多个,则根据当前子规则中的拼装规则,将各个目标值进行拼接得到最终目标值。
最终目标值确定单元,用于若目标值的数量为单个,则将目标值确定为最终目标值。
输出单元,用于将最终目标值输出。
需要说明的是,本申请上述实施例提供的各个单元的具体工作过程,可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
需要说明的是,本申请上述实施例提供的各个单元的具体工作过程,可相应地参考上述方法实施例中的相应的步骤,此处不再赘述。
本申请另一实施例提供了一种电子设备,如图7所示,包括:
存储器701和处理器702。
其中,所述存储器701用于存储程序。
处理器702用于执行存储器701存储的程序,该程序被执行时,具体用于实现如上述任意一个实施例提供的报文的处理方法。
本申请另一实施例提供了一种计算机存储介质,用于存储计算机程序,该计算机程序被执行时,用于实现如上述任意一个实施例提供的报文的处理方法。
计算机存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种报文的处理方法,其特征在于,包括:
获取待处理报文;
从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则;其中,每个所述目标转换规则包括多个有序的子规则;
分别针对每个所述目标转换规则,按照各个所述子规则在所述目标转换规则中的顺序,将所述目标转换规则中的第N个子规则作为当前子规则;其中,N的初始值为1;
利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配;
若各个所述当前参考值与所述当前子规则匹配,则根据所述当前子规则确定出目标值;
基于所述目标值确定最终目标值,并输出所述最终目标值;
若各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回执行所述将所述目标转换规则中的第N个子规则作为当前子规则。
2.根据权利要求1所述的方法,其特征在于,所述从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则,包括:
确定出预先设置的与所述待处理报文的类型对应的各个规则标识;
从预先配置的各个所述转换规则中,读取出各个所述规则标识对应的所述转换规则,作为所述目标转换规则。
3.根据权利要求1所述的方法,其特征在于,所述利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配,包括:
分别针对所述当前子规则中的每组参考信息,将所述待处理报文中符合所述参考信息中的参考名类型和参考名字段的参数,确定为所述参考信息对应的所述当前参考值;
将所述参考信息对应的所述当前参考值与所述参考信息中的对比值,按照所述参考信息中的对比类型进行拼装,得到所述当前参考值对应的对比规则;
将各个所述当前参考值对应的对比规则按照所述当前子规则中的对比结果表达式进行组合,得到当前对比结果;
判断所述当前对比结果是否为真;
若所述当前对比结果为真,则确定各个所述当前参考值与所述当前子规则匹配;
若所述当前对比结果为假,则确定各个所述当前参考值与所述当前子规则不匹配。
4.根据权利要求3所述的方法,其特征在于,所述根据所述当前子规则确定目标值,包括:
根据所述当前子规则中的各组目标信息中的目标名类型以及目标名字段,确定各组所述目标信息对应的目标名取值;
针对每组所述目标信息,若所述目标信息中的所述目标取值类型字段值为目标名取值,则将所述目标信息对应的目标名取值确定为目标值;
若所述目标信息中的所述目标取值类型字段值为固定值,则将所述目标信息中的目标取值字段值确定为目标值;
若所述目标信息中的所述目标取值类型字段值为正则表达式,则利用所述目标表达式对所述目标信息对应的目标名取值进行处理,得到目标值。
5.根据权利要求1所述的方法,其特征在于,所述基于所述目标值确定最终目标值,并输出所述最终目标值,包括:
若所述目标值的数量为多个,则根据所述当前子规则中的拼装规则,将各个所述目标值进行拼接得到最终目标值;
若所述目标值的数量为单个,则将所述目标值确定为所述最终目标值;
将所述最终目标值输出。
6.一种报文的处理装置,其特征在于,包括:
获取单元,用于获取待处理报文;
规则确定单元,用于从预先配置的多个转换规则中确定出与所述待处理报文的类型对应的各个目标转换规则;其中,每个所述目标转换规则包括多个有序的子规则;
子规则选取单元,用于分别针对每个所述目标转换规则,按照各个所述子规则在所述目标转换规则中的顺序,将所述目标转换规则中的第N个子规则作为当前子规则;其中,N的初始值为1;
匹配单元,用于利用所述当前子规则指示的所述待处理报文中的各个当前参考值与所述当前子规则进行匹配;
目标值确定单元,用于在各个所述当前参考值与所述当前子规则匹配时,根据所述当前子规则确定出目标值;
结果确定单元,基于所述目标值确定最终目标值,并输出所述最终目标值;
返回单元,用于在各个所述当前参考值与所述当前子规则不匹配,则将N加1并返回所述子规则选取单元执行所述将所述目标转换规则中的第N个子规则作为当前子规则。
7.根据权利要求6所述的装置,其特征在于,所述规则确定单元,包括:
标识确定单元,用于确定出预先设置的与所述待处理报文的类型对应的各个规则标识;
读取单元,用于从预先配置的各个所述转换规则中,读取出各个所述规则标识对应的所述转换规则,作为所述目标转换规则。
8.根据权利要求6所述的装置,其特征在于,所述匹配单元,包括:
参考值确定单元,用于分别针对所述当前子规则中的每组参考信息,将所述待处理报文中符合所述参考信息中的参考名类型和参考名字段的参数,确定为所述参考信息对应的所述当前参考值;
规则拼装单元,用于将所述参考信息对应的所述当前参考值与所述参考信息中的对比值,按照所述参考信息中的对比类型进行拼装,得到所述当前参考值对应的对比规则;
组合单元,用于将各个所述当前参考值对应的对比规则按照所述当前子规则中的对比结果表达式进行组合,得到当前对比结果;
第一判断单元,用于判断所述当前对比结果是否为真;
第一确定单元,用于在所述当前对比结果为真时,则确定各个所述当前参考值与所述当前子规则匹配;
第二确定单元,用于在所述当前对比结果为假时,确定各个所述当前参考值与所述当前子规则不匹配。
9.一种电子设备,其特征在于,包括:
存储器和处理器;
其中,所述存储器用于存储程序;
所述处理器用于执行所述程序,所述程序被执行时,具体用于实现如权利要求1至5任意一项所述的报文的处理方法。
10.一种计算机存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,用于实现如权利要求1至5任意一项所述的报文的处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210196618.4A CN114584631B (zh) | 2022-03-01 | 2022-03-01 | 一种报文的处理方法及装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210196618.4A CN114584631B (zh) | 2022-03-01 | 2022-03-01 | 一种报文的处理方法及装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114584631A true CN114584631A (zh) | 2022-06-03 |
CN114584631B CN114584631B (zh) | 2024-04-12 |
Family
ID=81771776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210196618.4A Active CN114584631B (zh) | 2022-03-01 | 2022-03-01 | 一种报文的处理方法及装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114584631B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115134208A (zh) * | 2022-07-11 | 2022-09-30 | 中信百信银行股份有限公司 | 报文转换方法、装置、电子设备及存储介质 |
CN116346961A (zh) * | 2023-05-30 | 2023-06-27 | 成方金融科技有限公司 | 金融报文处理方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110166463A (zh) * | 2019-05-27 | 2019-08-23 | 中国银联股份有限公司 | 一种报文传输转换方法及装置 |
CN111402057A (zh) * | 2020-03-31 | 2020-07-10 | 中国工商银行股份有限公司 | 交易报文匹配方法、装置、计算设备以及介质 |
CN111464515A (zh) * | 2020-03-20 | 2020-07-28 | 苏州浪潮智能科技有限公司 | 一种数据转换方法、装置、设备及存储介质 |
US20210117972A1 (en) * | 2019-10-21 | 2021-04-22 | Capital One Services, Llc | Rule-based messaging and electronic communication system |
CN113158650A (zh) * | 2021-05-12 | 2021-07-23 | 中国建设银行股份有限公司 | 一种报文处理方法、装置、设备及存储介质 |
CN113973110A (zh) * | 2021-10-25 | 2022-01-25 | 北京奇艺世纪科技有限公司 | 一种报文生成方法、装置及电子设备 |
-
2022
- 2022-03-01 CN CN202210196618.4A patent/CN114584631B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110166463A (zh) * | 2019-05-27 | 2019-08-23 | 中国银联股份有限公司 | 一种报文传输转换方法及装置 |
US20210117972A1 (en) * | 2019-10-21 | 2021-04-22 | Capital One Services, Llc | Rule-based messaging and electronic communication system |
CN111464515A (zh) * | 2020-03-20 | 2020-07-28 | 苏州浪潮智能科技有限公司 | 一种数据转换方法、装置、设备及存储介质 |
CN111402057A (zh) * | 2020-03-31 | 2020-07-10 | 中国工商银行股份有限公司 | 交易报文匹配方法、装置、计算设备以及介质 |
CN113158650A (zh) * | 2021-05-12 | 2021-07-23 | 中国建设银行股份有限公司 | 一种报文处理方法、装置、设备及存储介质 |
CN113973110A (zh) * | 2021-10-25 | 2022-01-25 | 北京奇艺世纪科技有限公司 | 一种报文生成方法、装置及电子设备 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115134208A (zh) * | 2022-07-11 | 2022-09-30 | 中信百信银行股份有限公司 | 报文转换方法、装置、电子设备及存储介质 |
CN116346961A (zh) * | 2023-05-30 | 2023-06-27 | 成方金融科技有限公司 | 金融报文处理方法、装置、电子设备及存储介质 |
CN116346961B (zh) * | 2023-05-30 | 2023-09-05 | 成方金融科技有限公司 | 金融报文处理方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114584631B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114584631B (zh) | 一种报文的处理方法及装置、电子设备、存储介质 | |
CN106611137B (zh) | 一种风险控制方法及装置 | |
CN111290866A (zh) | 业务处理方法及装置 | |
CN107276970B (zh) | 一种解绑、绑定方法和装置 | |
CN111478829B (zh) | 区块链网络的压力测试方法及装置、系统 | |
EP3812917A1 (en) | Data structure reading method and apparatus, data structure updating method and apparatus, and electronic device | |
CN112488714A (zh) | 一种基于区块链交易过程的备注字段上链的方法 | |
CN110990456A (zh) | 一种基于区块链的信息读取转化方法及设备、介质 | |
CN110071968A (zh) | 一种基于区块链的消息存储方法及装置 | |
CN112070342B (zh) | 微服务评价方法和装置、电子设备和计算机可读存储介质 | |
CN113095824A (zh) | 基于区块链的资产管理方法、装置及电子设备 | |
CN114416854B (zh) | 一种数据转换处理方法和系统 | |
CN111913813A (zh) | 一种数据交互处理方法、装置、设备和存储介质 | |
CN115562894A (zh) | 消息处理的方法、装置、电子设备及可读存储介质 | |
US11940890B2 (en) | Timing index anomaly detection method, device and apparatus | |
CN111177093A (zh) | 一种科技资源的共享方法及设备、介质 | |
CN115730689A (zh) | 基于数字化管理平台的设备预约方法 | |
CN114490651A (zh) | 数据存储方法及装置 | |
CN114490402A (zh) | 一种报文字段合法性检查方法及装置 | |
CN114722398A (zh) | 智能合约异常检测方法、区块链网络、设备及存储介质 | |
CN111143469A (zh) | 一种数据对账方法、装置、电子设备及存储介质 | |
CN110020840B (zh) | 数据传输方法及其系统 | |
CN116431367B (zh) | 一种修改票证信息的方法、系统及计算机可读存储介质 | |
CN113301002B (zh) | 一种信息处理方法、装置、电子设备以及存储介质 | |
CN112488836B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |