技术新讯 > 电子通信装置的制造及其应用技术 > 一种报文转换方法、装置及系统与流程  >  正文

一种报文转换方法、装置及系统与流程

  • 国知局
  • 2024-10-21 14:23:18

本申请涉及数据库,特别是涉及一种报文转换方法、装置及系统。

背景技术:

1、诸如应用程序等业务端通过向数据库发送报文的方式实现与数据库的交互。目前,业务端自身需要更换支持数据库的交互框架(比如,对象关系映射orm框架)或修改自身与数据库交互相关的代码,才能向数据库提供数据库可处理的报文,进而实现与数据库的交互。可见,现有这种实现业务端向数据库提供数据库可处理报文的方式,对业务端的代码侵入性较强。

技术实现思路

1、有鉴于此,本申请提出了一种报文转换方法、装置及系统,主要目的在于无需修改业务端的代码便可实现业务端与目标数据库的交互。

2、为了达到上述目的,本申请主要提供了如下技术方案:

3、第一方面,本申请提供了一种报文转换方法,该报文转换方法包括:

4、获取待转换报文;其中,所述待转换报文为业务端需要发送至目标数据库的报文;

5、基于所述目标数据库适配的应用层协议和语法,将所述待转换报文转换为所述目标数据库可处理的目标报文。

6、在本申请一些实施例中,基于所述目标数据库适配的应用层协议和语法,将所述待转换报文转换为所述目标数据库可处理的目标报文,包括:解析所述待转换报文,获得所述待转换报文包括的数据库操作语句;基于所述目标数据库适配的语法,将所述数据库操作语句转换成目标语句;其中,所述目标语句符合所述目标数据库适配的语法;根据所述目标数据库适配的应用层协议封装所述目标语句,得到所述目标报文。

7、在本申请一些实施例中,基于所述目标数据库适配的语法,将所述数据库操作语句转换成目标语句,包括:解析所述数据库操作语句,生成抽象语法树;基于所述目标数据库适配的语法,调整所述抽象语法树,以使调整后的抽象语法树符合所述目标数据库适配的语法;基于调整后的抽象语法树,生成所述目标语句。

8、在本申请一些实施例中,基于所述目标数据库适配的语法,调整所述抽象语法树,包括:基于所述待转换报文采用的语法以及所述目标数据库适配的语法,确定所述抽象语法树中的待调整对象;确定与所确定的待调整对象对应的目标对象,其中,所述目标对象符合所述目标数据库适配的语法;将所述抽象语法树中的待调整对象替换为对应的目标对象,得到调整后的抽象语法树。

9、在本申请一些实施例中,该报文转换方法还包括:解析所述待转换报文,获得所述待转换报文包括的数据库操作语句;解析所述数据库操作语句,确定所述业务端对所述目标数据库的操作动作;若判定所述业务端对所述目标数据库具有执行所述操作动作的权限,则生成与所述操作动作匹配的权限信息,并在将所述待转换报文转换为所述目标数据库可处理的目标报文时,将所述权限信息添加至所述目标报文。

10、在本申请一些实施例中,该报文转换方法还包括:若判定所述业务端对所述目标数据库不具有执行所述操作动作的权限,则向所述业务端反馈提示信息;其中,所述提示信息用于提示所述待转换报文无权操作所述目标数据库。

11、在本申请一些实施例中,该报文转换方法还包括:确定所述业务端的业务端标识,其中,每个业务端标识匹配有相应业务端的权限;判断所述业务端标识匹配的权限是否允许所述操作动作;若是,则判定所述业务端对所述目标数据库具有执行所述操作动作的权限;否则,则判定所述业务端对所述目标数据库不具有执行所述操作动作的权限。

12、在本申请一些实施例中,该报文转换方法还包括:确定使用所述业务端发起所述待转换报文的用户;判断所述用户匹配的权限是否允许所述操作动作;若是,则判定所述业务端对所述目标数据库具有执行所述操作动作的权限;否则,则判定所述业务端对所述目标数据库不具有执行所述操作动作的权限。

13、在本申请一些实施例中,解析所述待转换报文,获得所述待转换报文包括的数据库操作语句,包括:通过第一报文解析器解析所述待转换报文,获得所述数据库操作语句;其中,所述第一报文解析器与所述待转换报文采用的应用层协议相匹配。

14、在本申请一些实施例中,获取待转换报文,包括:若检测到所述业务端向所述目标数据库发送报文时,拦截报文,并基于第二解析器解析所拦截的报文,获得所述待转换报文;其中,所述第二解析器与所拦截的报文采用的传输层协议相匹配。

15、在本申请一些实施例中,该报文转换方法还包括:若确定需要将所述目标报文发送至所述目标数据库,则基于所述目标数据库适配的传输层协议,封装所述目标报文,并将封装所得的报文发送至所述目标数据库。

16、在本申请一些实施例中,该报文转换方法还包括:若获取到所述目标数据库针对所述业务端反馈的反馈报文,则基于所述业务端适配的应用层协议,将所述反馈报文转换为所述业务端可处理的报文。

17、第二方面,本申请提供了一种报文转换装置,该报文转换装置包括:

18、获取模块,用于获取待转换报文;其中,所述待转换报文为业务端需要发送至目标数据库的报文;

19、转换模块,用于基于所述目标数据库适配的应用层协议和语法,将所述待转换报文转换为所述目标数据库可处理的目标报文。

20、第三方面,本申请提供了一种报文转换系统,所述系统包括:业务端、目标数据库以及应用如第一方面的报文转换方法的转换设备。

21、第四方面,本申请提供了一种计算机可读存储介质,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行第一方面的报文转换方法。

22、第五方面,本申请提供了一种电子设备,所述电子设备包括:存储器,用于存储程序;处理器,耦合至所述存储器,用于运行所述程序以执行第一方面述的报文转换方法

23、本申请提供的报文转换方法、装置及系统,将业务端需要发送至目标数据库的报文,获取为待转换报文;基于目标数据库适配的应用层协议和语法,将待转换报文转换为目标数据库可处理的目标报文。这样,业务端无需修改自身的代码,且业务端无需了解与其交互的数据库的应用层协议和语法,在业务端向数据库发起报文时,均可将其所发起的报文转换为数据库可处理的目标报文,以供数据库处理,从而实现业务端与数据库的交互。这种实现业务端向数据库提供数据库可处理的报文的方式,能够降低对业务端的代码侵入性。另外,由于业务端不再通过修改代码的方式适配数据库,因此即使业务端需要适配新的数据库,仅需要了解新的数据库适配的应用程序协议和语法便可对业务端需要传输至新的数据库的报文做转换处理,便可实现业务端与新的数据库的交互,这样能够降低业务端与数据库的适配成本。

24、上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。

技术特征:

1.一种报文转换方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,基于所述目标数据库适配的应用层协议和语法,将所述待转换报文转换为所述目标数据库可处理的目标报文,包括:

3.根据权利要求2所述的方法,其特征在于,基于所述目标数据库适配的语法,将所述数据库操作语句转换成目标语句,包括:

4.根据权利要求3所述的方法,其特征在于,基于所述目标数据库适配的语法,调整所述抽象语法树,包括:

5.根据权利要求1所述的方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:

7.根据权利要求5所述的方法,其特征在于,所述方法还包括:

8.根据权利要求5所述的方法,其特征在于,所述方法还包括:

9.根据权利要求2或5所述的方法,其特征在于,解析所述待转换报文,获得所述待转换报文包括的数据库操作语句,包括:

10.根据权利要求1-8中任一项所述的方法,其特征在于,获取待转换报文,包括:

11.根据权利要求1-8中任一项所述的方法,其特征在于,所述方法还包括:

12.根据权利要求1-8中任一项所述的方法,其特征在于,所述方法还包括:

13.一种报文转换装置,其特征在于,所述装置包括:

14.一种报文转换系统,其特征在于,所述系统包括:业务端、目标数据库以及应用如权利要求1-12中任一项所述的报文转换方法的转换设备。

15.一种计算机可读存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至权利要求12中任意一项所述的报文转换方法。

16.一种电子设备,其特征在于,所述电子设备包括:

技术总结本申请公开了一种报文转换方法、装置及系统,涉及数据库技术领域,主要目的在于无需修改业务端的代码便可实现业务端与目标数据库的交互;主要技术方案包括:获取待转换报文;其中,所述待转换报文为业务端需要发送至目标数据库的报文;基于所述目标数据库适配的应用层协议和语法,将所述待转换报文转换为所述目标数据库可处理的目标报文。技术研发人员:杨嘉欣,廖意明,孙小俊,张海生,资郴琛,杨德辉受保护的技术使用者:奇安信科技集团股份有限公司技术研发日:技术公布日:2024/10/17

本文地址:https://www.jishuxx.com/zhuanli/20241021/317951.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。