报文的转换方法和报文的转换装置与流程

文档序号:33637087发布日期:2023-03-29 00:58阅读:442来源:国知局
报文的转换方法和报文的转换装置与流程

1.本发明涉及数据处理领域,尤其涉及一种报文的转换方法和报文的转换装置。


背景技术:

2.在金融系统中,使用报文的形式进行交互,被各金融系统广泛使用的报文一般是基于银行间市场业务数据交换(inter-bank market information exchange,imix)协议(以下有时简称为“imix协议”)的报文和基于金融信息交换(financial information exchange,fix)协议(以下有时简称为“fix协议”)的报文。
3.在接收到来自其他金融系统的报文时,如果该报文的协议与本金融系统的协议不匹配,通常需要对报文进行转换才能查看。例如,将imix报文转换为fix报文。
4.这种转化工作通常是由人工完成,但是在转换工作中,重复性地工作量较大,耗时较长,速度慢,并且,两种报文的映射关系不直观,并且由于两种协议的字段并非一一对应,导致有许多非对应的字段存储在通用字段中,此外,不同机构发送的报文内的通用字段存储类型没有标准,无法统一,复用率低,可维护性差。
5.本部分旨在为权利要求书中陈述的本发明实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。


技术实现要素:

6.本发明实施例提供一种报文的转换方法,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。所述转换方法包括:根据第一报文协议的字段结构提取接收到的第一报文的预定字段的字段值,所述第一报文遵循所述第一报文协议;根据第一报文协议的字段结构到第二报文协议的字段结构的映射关系,将所述第一报文的所述预定字段映射到第二报文协议的字段结构中的对应字段;根据所述预定字段的字段值和所述预定字段与所述第二报文协议的字段结构中的字段的对应关系生成第二报文,所述第二报文遵循所述第二报文协议。
7.本发明实施例提供一种报文的转换装置,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。所述转换装置包括:提取模块,其根据第一报文协议的字段结构提取接收到的第一报文的预定字段的字段值,所述第一报文遵循所述第一报文协议;映射模块,其根据第一报文协议的字段结构到第二报文协议的字段结构的映射关系,将所述第一报文的所述预定字段映射到第二报文协议的字段结构中的对应字段;生成模块,其根据所述预定字段的字段值和所述预定字段与所述第二报文协议的字段结构中的字段的对应关系生成第二报文,所述第二报文遵循所述第二报文协议。
8.本发明实施例还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述转换方法。
9.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述转换方法。
10.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述转换方法。
11.本发明实施例中,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
附图说明
12.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
13.图1是本发明实施例的报文的转换方法的一个示意图。
14.图2是本发明实施例的报文的转换方法的另一个示意图。
15.图3是本发明实施例的报文的转换方法的另一个示意图。
16.图4是本发明实施例的报文的转换装置的一个示意图。
17.图5是本发明实施例的计算机设备的一个示意图。
具体实施方式
18.为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。
19.本发明实施例提供一种报文的转换方法,图1是本发明实施例的报文的转换方法的一个示意图。如图1所示,转换方法100包括:
20.步骤101:根据第一报文协议的字段结构提取接收到的第一报文的预定字段的字段值,所述第一报文遵循所述第一报文协议;
21.步骤103:根据第一报文协议的字段结构到第二报文协议的字段结构的映射关系,将所述第一报文的所述预定字段映射到第二报文协议的字段结构中的对应字段;
22.步骤105:根据所述预定字段的字段值和所述预定字段与所述第二报文协议的字段结构中的字段的对应关系生成第二报文,所述第二报文遵循所述第二报文协议。
23.由此,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
24.在至少一个实施例中,所述第一报文协议的字段结构、所述第二报文协议的字段结构和所述映射关系预先配置为excel的配置文件。例如,利用excel模板对第一报文协议的字段结构、第二报文协议的字段结构和映射关系进行定义。
25.由此,通过excel直观地配置映射结构并保留映射关系。
26.图2是本发明实施例的报文的转换方法的另一个示意图。
27.在至少一个实施例中,如图2所示,转换方法200包括:
28.步骤201:读取所述excel的配置文件。
29.例如,在步骤101之前,读取配置有第一报文协议的字段结构、第二报文协议的字段结构和映射关系的excel配置文件,获得第一报文协议的字段结构、第二报文协议的字段
结构和第一报文到第二报文的映射关系。
30.由此,能够减少重复工作量,提高效率,并且通过excel保留了映射关系,便于后续维护,另外,能够统一映射开发标准,减少标准不统一带来的风险。
31.在至少一个实施例中,例如,所述第一报文协议为imix协议,所述第二报文协议为fix协议。
32.imix协议定义的标准的imix报文包括报文头(header)、报文尾(trailer)和报文正文(body),其中,报文头指明协议版本、报文类型、报文体长度、发送目的地、报文序号、发送起始点和发送时间等基础信息;报文尾包含3位数的校验和值并以此终止一条报文。报文头和报文尾通常用于数据传输,不直接描述业务内容;报文正文由一系列域组成,用于描述特定业务内容。
33.fix协议对报文处理过程中的所有信息进行字段定义,包括序号、字段名、数据类型等,例如金融机构名称的字段定义为:序号31,字段名sendercompid,数据类型string。fix报文分为报文头和报文体,通过字段名与字段值一一对应的方式对报文头和报文体进行解析。用于确定金融机构名称的字段为sendercompid和sendersubid,sendercompid的不同字段值代表着不同的机构名称,sendersub id的不同字段值代表着不同的交易员,通过sendercompid和sendersubid这两个字段的字段值,可以确定机构名称。用于确定报文类型的字段为msgtype,msgtype的不同字段值都代表着不同的报文类型,通过msgtype的字段值,可以确定报文类型,例如msgtype=1表示测试请求,msgtype=2表示重新发送请求等。
34.在至少一个实施例中,例如,在excel模板中列出标准的imix报文的所有字段结构和fix报文的所有字段结构,并且,按照fix报文的所有字段结构从标准的imix报文的字段结构中寻找对应的预定字段,并将该对应关系存储在excel中作为映射关系。
35.另外,第一报文协议和第二报文协议还可以是其他协议,例如,chix、webservice、socket等,本发明实施例对此不作限制。
36.在至少一个实施例中,如图2所示,转换方法200还可以包括:
37.步骤203:打印输出生成的所述第二报文。例如,打印输出完整的第二报文的映射代码。
38.图3是本发明实施例的报文的转换方法的另一个示意图。
39.在至少一个实施例中,如图3所示,转换方法300还可以包括:
40.步骤301:验证提取出的所述第一报文的预定字段是否能够与所述第二报文协议的字段结构中的字段对应;
41.步骤303:在验证结果为存在不能对应的字段的情况下,输出异常提示。
42.由此,能够避免字段对应错误导致输出的映射代码报错。
43.在至少一个实施例中,如图3所示,转换方法300还可以包括:
44.步骤305:进行异常处理。例如,重新提取接收到的报文中的各字段并再次进行映射,或者也可以将出现异常的报文列表输出,从而方便操作人员单独处理。
45.通过本发明实施例,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
46.本发明实施例提供一种报文的转换装置,本发明实施例的转换装置解决问题的原理与上述转换方法相似,因此该转换装置的实施可以参见上述转换方法的实施,重复之处
不再赘述。
47.图4是本发明实施例的报文的转换装置的一个示意图。
48.如图4所示,转换装置400包括提取模块401、映射模块402和生成模块403。提取模块401根据第一报文协议的字段结构提取接收到的第一报文的预定字段的字段值,所述第一报文遵循所述第一报文协议;映射模块402根据第一报文协议的字段结构到第二报文协议的字段结构的映射关系,将所述第一报文的所述预定字段映射到第二报文协议的字段结构中的对应字段;生成模块403根据所述预定字段的字段值和所述预定字段与所述第二报文协议的字段结构中的字段的对应关系生成第二报文,所述第二报文遵循所述第二报文协议。
49.由此,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
50.另外,生成模块403可以通过调用各类代码生成方法,将输入的映射结构翻译成具体的映射代码。本发明实施例对代码生成方法不作限制,可以根据实际需要进行选择。
51.在至少一个实施例中,如图4所示,转换装置400还可以包括打印模块404,打印模块404打印输出生成的所述第二报文。
52.在至少一个实施例中,如图4所示,转换装置还可以包括验证模块405和异常处理模块406。验证模块405验证提取出的所述第一报文的预定字段是否能够与所述第二报文协议的字段结构中的字段对应;异常处理模块406在验证结果为存在不能对应的字段的情况下,输出异常提示。
53.另外,异常处理模块406还可以处理其他异常情况。本发明实施例对具体的处理方式不作限制,可以根据实际情况进行设置。例如,异常处理模块406重新提取接收到的报文中的各字段并再次进行映射,或者也可以将出现异常的报文列表输出,从而方便操作人员单独处理。
54.在至少一个实施例中,所述第一报文协议的字段结构、所述第二报文协议的字段结构和所述映射关系预先配置为excel的配置文件。
55.在至少一个实施例中,如图4所示,转换装置400还可以包括读取模块407,读取模块407读取所述excel的配置文件。例如,读取模块407负责从excel中提取报文映射结构并传给提取模块401、映射模块402、生成模块403等模块。
56.在至少一个实施例中,所述第一报文协议为银行间市场业务数据交换协议,所述第二报文协议为金融信息交换协议。
57.通过本发明实施例,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
58.本发明实施例还提供一种计算机设备,图5是本发明实施例的计算机设备的一个示意图。如图5所示,计算机设备500包括存储器501和处理器502,存储器501和处理器502相互耦合。存储器501中存储有可在处理器502上运行的计算机程序,处理器502执行所述计算机程序时实现上述转换方法100、200、300。
59.本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述转换方法。
60.本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括计算机程
序,所述计算机程序被处理器执行时实现上述转换方法。
61.本发明实施例中,通过将报文的字段结构和报文之间的映射关系预先存储起来,能够提高转换效率,并且提高维护性。
62.本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
63.本发明是参照根据本发明实施例的方法、装置、系统、和计算机程序产品的示意图和/或流程图和/或方框图来描述的。应理解可由计算机程序指令实现示意图和/或流程图和/或方框图中的每一步骤和/或操作和/或流程和/或方框、以及示意图和/或流程图和/或方框图中的步骤和/或操作和/或流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在示意图一个步骤或多个步骤和/或流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
64.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在示意图一个步骤或多个步骤和/或流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
65.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在示意图一个步骤或多个步骤和/或流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
66.以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1