一种消息传输的方法及系统的制作方法

文档序号:9276641阅读:261来源:国知局
一种消息传输的方法及系统的制作方法
【技术领域】
[0001]本发明涉及通信技术领域,特别涉及一种消息传输的方法及系统。
【背景技术】
[0002]异构系统为操作系统不同或依赖的编程开发平台不同的至少两种系统。由于操作系统或编程开发平台不同的系统,消息传输所遵循的标准(包括承载消息的数据结构等)不同,因此互为异构系统的至少两种系统之间无法直接进行消息传输,必须通过消息中间件才能实现。
[0003]现有的消息中间件通常只针对两种指定类型的互为异构系统的系统,如.NET系统和JAVA系统。当.NET系统向JAVA系统传输消息时,接收.NET系统发送的符合.NET系统的标准的消息;按照设定的标准,对符合.NET系统的标准的消息进行格式转换,得到符合JAVA系统的标准的消息;向JAVA系统发送符合JAVA系统的标准的消息。当JAVA系统向.NET系统传输消息时,将上述过程的操作对象交换即可。
[0004]在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
[0005]消息中间件只针对两种指定类型的互为异构系统的系统,若一个异构系统包括不止两种指定类型的互为异构系统的系统时,如.NET系统、JAVA系统、C++系统三种系统,则需要如针对.NET系统和JAVA系统的消息中间件、以及针对JAVA系统和C++系统的消息中间件协同实现异构系统的消息传输。但是消息中间件进行格式转换所按照的标准是各个公司为了推广自己的产品而设定的,并没有达到统一,从而导致各个消息中间件在接口等方面存在差异,各个消息中间件之间很难实现有效匹配和融合,进而导致异构系统的消息传输无法实现。

【发明内容】

[0006]为了解决现有技术导致异构系统的消息传输无法实现的问题,本发明实施例提供了一种消息传输的方法及系统。所述技术方案如下:
[0007]第一方面,本发明实施例提供了一种消息传输的方法,适用于异构系统之间的消息传输,所述方法包括:
[0008]源系统将所述源系统的数据结构格式设定为通用格式;
[0009]创建所述数据对象,创建的所述数据对象符合所述通用格式对所述数据对象的要求;
[0010]对创建的所述数据对象按照JSON格式进行编码;
[0011]向目标系统发送编码后的所述数据对象;
[0012]其中,所述源系统和所述目标系统互为异构系统,所述通用格式为所述源系统和所述目标系统共同采用的数据结构格式。
[0013]可选地,所述通用格式对数据对象的要求包括:
[0014]数据结构体名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0015]数据结构体中成员名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0016]数据结构体中成员类型的描述方式在所述数据结构体所属的系统中保持一致;
[0017]数据结构体中嵌套关系在所述数据结构体所属的系统中保持一致;
[0018]数据结构体名称与数据结构体中成员名称在所述数据结构体所属的系统中不重复。
[0019]第二方面,本发明实施例提供了一种消息传输的方法,适用于异构系统之间的消息传输,所述方法包括:
[0020]目标系统将所述目标系统的数据结构格式设定为通用格式;
[0021]接收源系统发送的所述数据对象;
[0022]基于所述通用格式对所述数据对象的要求,对接收的所述数据对象按照JSON格式进行解码;
[0023]从解码后的所述数据对象中获取数据;
[0024]其中,所述源系统和所述目标系统互为异构系统,所述通用格式为所述源系统和所述目标系统共同采用的数据结构格式。
[0025]可选地,所述通用格式对数据对象的要求包括:
[0026]数据结构体名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0027]数据结构体中成员名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0028]数据结构体中成员类型的描述方式在所述数据结构体所属的系统中保持一致;
[0029]数据结构体中嵌套关系在所述数据结构体所属的系统中保持一致;
[0030]数据结构体名称与数据结构体中成员名称在所述数据结构体所属的系统中不重复。
[0031]第三方面,本发明实施例提供了一种源系统,所述源系统与目标系统互为异构系统,所述源系统包括:
[0032]设定模块,用于将所述源系统的数据结构格式设定为通用格式,所述通用格式为所述源系统和所述目标系统共同采用的数据结构格式;
[0033]创建模块,用于创建所述数据对象,创建的所述数据对象符合所述通用格式对所述数据对象的要求;
[0034]编码模块,用于对创建的所述数据对象按照JSON格式进行编码;
[0035]发送模块,用于向所述目标系统发送编码后的所述数据对象。
[0036]可选地,所述通用格式对数据对象的要求包括:
[0037]数据结构体名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0038]数据结构体中成员名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0039]数据结构体中成员类型的描述方式在所述数据结构体所属的系统中保持一致;
[0040]数据结构体中嵌套关系在所述数据结构体所属的系统中保持一致;
[0041]数据结构体名称与数据结构体中成员名称在所述数据结构体所属的系统中不重复。
[0042]第四方面,本发明实施例提供了一种目标系统,所述目标系统与源系统互为异构系统,所述目标系统包括:
[0043]设定模块,用于将所述目标系统的数据结构格式设定为通用格式,所述通用格式为所述源系统和所述目标系统共同采用的数据结构格式;
[0044]接收模块,用于接收所述源系统发送的所述数据对象;
[0045]解码模块,用于基于所述通用格式对所述数据对象的要求,对接收的所述数据对象按照JSON格式进行解码;
[0046]获取模块,用于从解码后的所述数据对象中获取数据。
[0047]可选地,所述通用格式对数据对象的要求包括:
[0048]数据结构体名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0049]数据结构体中成员名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0050]数据结构体中成员类型的描述方式在所述数据结构体所属的系统中保持一致;
[0051]数据结构体中嵌套关系在所述数据结构体所属的系统中保持一致;
[0052]数据结构体名称与数据结构体中成员名称在所述数据结构体所属的系统中不重复。
[0053]第五方面,本发明实施例提供了一种消息传输的系统,所述系统包括互为异构系统的源系统和目标系统,
[0054]所述源系统用于,将所述源系统的数据结构格式设定为通用格式;创建数据对象,创建的所述数据对象符合所述通用格式对所述数据对象的要求;对创建的所述数据对象按照JSON格式进行编码;向所述目标系统发送编码后的所述数据对象;
[0055]所述目标系统用于,将所述目标系统的数据结构格式设定为通用格式;接收所述源系统发送的所述数据对象;基于所述通用格式对所述数据对象的要求,对接收的所述数据对象按照JSON格式进行解码;从解码后的所述数据对象中获取数据;
[0056]其中,所述通用格式为所述源系统和所述目标系统共同采用的数据结构格式。
[0057]可选地,所述通用格式对数据对象的要求包括:
[0058]数据结构体名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0059]数据结构体中成员名称的字符和大小写在所述数据结构体所属的系统中均保持一致;
[0060]数据结构体中成员类型的描述方式在所述数据结构体所属的系统中保
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1