CN112866182B - 数据对接方法、装置和计算机可读存储介质 - Google Patents

数据对接方法、装置和计算机可读存储介质 Download PDF

Info

Publication number
CN112866182B
CN112866182B CN201911189107.4A CN201911189107A CN112866182B CN 112866182 B CN112866182 B CN 112866182B CN 201911189107 A CN201911189107 A CN 201911189107A CN 112866182 B CN112866182 B CN 112866182B
Authority
CN
China
Prior art keywords
data
plug
docking
transmission protocol
protocol
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.)
Active
Application number
CN201911189107.4A
Other languages
English (en)
Other versions
CN112866182A (zh
Inventor
杨展鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Uniview Technologies Co Ltd
Original Assignee
Zhejiang Uniview Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Uniview Technologies Co Ltd filed Critical Zhejiang Uniview Technologies Co Ltd
Priority to CN201911189107.4A priority Critical patent/CN112866182B/zh
Publication of CN112866182A publication Critical patent/CN112866182A/zh
Application granted granted Critical
Publication of CN112866182B publication Critical patent/CN112866182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本发明实施例提供一种数据对接方法、装置和计算机可读存储介质,涉及通信技术领域。数据对接方法应用于数据对接***,通过接收待发送数据,获取待发送数据的发送对象的传输协议和接收对象的传输协议,进而在发送对象的传输协议和接收对象的传输协议不匹配时,调用插件将待发送数据转换为支持接收对象的传输协议的目标数据,并将目标数据发送至接收对象。从而便捷地实现了数据对接。

Description

数据对接方法、装置和计算机可读存储介质
技术领域
本发明涉及通信技术领域,具体而言,涉及一种数据对接方法、装置和计算机可读存储介质。
背景技术
随着信息化基础建设的不断推进,在现在的很多项目中一般都涉及多个对象,如多个厂家同时参与,而不同对象的应用***一般都有不同的数据格式标准以及数据交互方式,所以在不同对象之间就需要数据对接***来打通数据的交互通道,从而实现整个项目的需求。
数据对接***一般涉及到不同对象的不同传输协议以及不同的对接方式,作为数据流转的一环,一般项目都需要尽快能打通上下级应用***之间的数据交互,然而,现今实现数据对接较为复杂。
发明内容
有鉴于此,本发明的目的在于提供一种数据对接方法、装置和计算机可读存储介质。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,实施例提供一种数据对接方法,应用于数据对接***,所述方法包括:
接收待发送数据;
获取所述待发送数据的发送对象的传输协议和接收对象的传输协议;
在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接。
在可选的实施方式中,所述数据对接***中包括与各传输协议分别对应的各插件,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,包括:
查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件;
基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件;
基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
在可选的实施方式中,与各传输协议分别对应的各插件通过以下步骤添加至所述数据对接***中:
获取针对每个传输协议对应开发的插件;
将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息。
在可选的实施方式中,所述方法还包括:在所述注册文件中将所述第一插件和第二插件的状态修改为启动,从而在扫描所述注册文件时,通过java反射技术调用所述第一插件和所述第二插件进行数据对接。
在可选的实施方式中,在扫描所述注册文件时,通过java反射技术调用所述第一插件和所述第二插件进行数据对接,包括:
从所述数据对接***中加载所述注册文件,并对所述注册文件中的内容进行解析,得到状态为开启的所述第一插件和所述第二插件;
利用java反射技术,根据所述第一插件的信息和所述第二插件的信息加载对应的代码作为进行对接的代码,并启动所述进行对接的代码,进而使用Spring技术进行数据对接。
在可选的实施方式中,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,包括:
判断是否需要对所述待发送数据进行过滤筛选,若是,则按设定条件对所述待发送数据进行过滤筛选,调用插件将过滤筛选之后的数据转换为支持所述接收对象的传输协议的目标数据;若否,则直接调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据。
第二方面,实施例提供一种数据对接装置,应用于数据对接***,所述数据对接装置包括:
数据接收模块,用于接收待发送数据;
协议获取模块,用于获取所述待发送数据的发送对象的传输协议和接收对象的传输协议;
数据对接模块,用于在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接。
在可选的实施方式中,所述数据对接***中包括与各传输协议分别对应的各插件,所述数据对接模块用于查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件,基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件,基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
在可选的实施方式中,与各传输协议分别对应的各插件通过以下步骤添加至所述数据对接***中:获取针对每个传输协议对应开发的插件,将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息。
第三方面,实施例提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如前述实施方式中任一项所述的数据对接方法。
本发明实施例提供的数据对接方法、装置和计算机可读存储介质,在发送对象的传输协议和接收对象的传输协议不匹配时,通过调用插件将待发送数据转换为支持接收对象的传输协议的目标数据,并将目标数据发送至接收对象,从而实现数据对接,实现较为便捷。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的一种数据对接方法的流程示意图。
图2示出了本发明实施例提供的一种应用场景示意图。
图3示出了本发明实施例提供的一种数据对接方法的另一流程示意图。
图4示出了本发明实施例提供的一种应用场景中数据对接***的示例性结构框图。
图5示出了本发明实施例提供的一种数据对接装置的示例性结构框图。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
需要说明的是,在不冲突的情况下,本发明的实施例中的特征可以相互结合。
请参照图1,为本发明实施例提供的一种数据对接方法的流程示意图,该数据对接方法应用于数据对接***,数据对接方法包括S110、S120和S130。
S110,接收待发送数据。
S120,获取所述待发送数据的发送对象的传输协议和接收对象的传输协议。
S130,在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接。
本发明实施例中,在发送对象的传输协议和接收对象的传输协议不匹配时,通过调用插件将待发送数据转换为支持接收对象的传输协议的目标数据,并将目标数据发送至接收对象,从而便捷地实现了数据对接。
采用上述数据对接方案,通过调用插件完成数据对接,因而,可基于插件式开发框架,只针对传输协议的不同点和不同的对接方式进行插件开发,降低开发复杂度。采用插件式开发框架,通过开发与各传输协议分别对应的各插件并添加至数据对接***,对于支持不同传输协议的发送对象、支持不同传输协议的接收对象,只需基于同一数据对接***切换不同的插件即可对接不同的发送对象和接收对象,适应性高。
示例性地,请参阅图2,本发明实施例提供了一种在发送对象的传输协议和接收对象的传输协议不匹配时,调用插件将待发送数据转换为支持接收对象的传输协议的目标数据的示例性应用场景示意图。如图2所示,对于传输协议不匹配的发送对象和接收对象,数据从发送对象到接收对象,中间通过数据对接***进行传输。数据对接***中,调用用于对接发送对象的第一插件和用于对接接收对象的第二插件,通过第一插件和第二插件实现数据从发送对象到接收对象的传输。其中,第一插件和第二插件为数据对接***中的插件化模块,针对不同对象的协议文档和对接方式,可以灵活开发不同的插件进行数据对接。相应地,数据对接***中可以包括与各传输协议分别对应的各插件。请结合参阅图3,S130中调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据可以通过S131至S133实现。
S131,查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件。
S132,基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件。
S133,基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
其中,与各传输协议分别对应的各插件可以通过以下步骤添加至所述数据对接***中:获取针对每个传输协议对应开发的插件,将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息。基于图2所示应用场景,在选择调用第一插件和第二插件实现数据从发送对象到接收对象的传输的情况下,则在所述注册文件中将所述第一插件和第二插件的状态修改为启动,从而在扫描所述注册文件时,通过java反射技术调用所述第一插件和所述第二插件进行数据对接。例如,可以从所述数据对接***中加载所述注册文件,并对所述注册文件中的内容进行解析,得到状态为开启的所述第一插件和所述第二插件,利用java反射技术,根据所述第一插件的信息和所述第二插件的信息加载对应的代码作为进行对接的代码,并启动所述进行对接的代码,进而使用Spring技术进行数据对接。
java反射技术在运行状态中,对于任意一个实体类,都能够知道这个类的所有属性和方法。对于任意一个对象,都能够调用它的任意方法和属性。这种动态获取信息以及动态调用对象方法的功能也称为java语言的反射机制。Spring是一个开源框架,一个轻量级的控制反转(Inversion of Control,IoC)和面向切面(Aspect Oriented Programming,AOP)的容器框架。
本发明实施例中的数据对接***采用java反射技术和Spring实现,在数据对接***启动时扫描插件注册文件,即可通过java反射技术调用所需的数据对接,基于Spring技术开发所需的数据对接,实现较为便捷。
根据发送对象的传输协议和接收对象的传输协议的不同,发送对象和接收对象所需要数据的不同,可以对数据进行过滤筛选等操作,相应地,S130中调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据可以包括:判断是否需要对所述待发送数据进行过滤筛选,若是,则按设定条件对所述待发送数据进行过滤筛选,调用插件将过滤筛选之后的数据转换为支持所述接收对象的传输协议的目标数据。若否,则直接调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据。
本发明实施例中,发送对象、接收对象并非特指某一发送对象、接收对象,而是泛指传输协议不匹配,但需要进行数据对接的任意一组发送对象、接收对象。相应地,第一插件不限定于与某一发送对象的传输协议对应的插件,可以泛指与不同发送对象的传输协议对应的任一插件。第二插件不限定于与某一接收对象的传输协议对应的插件,可以泛指与不同接收对象的传输协议对应的任一插件。
为了更为清楚地阐述本发明实施例的实现原理,现以下述场景为例进行举例说明。
假设发送对象为下级域(厂家),接收对象为上级域(厂家),下级域的传输协议与上级域的传输协议不匹配,数据对接***中包括与各传输协议分别对应的各插件,各插件中包括与下级域的传输协议对应的下级域插件,以及与上级域的传输协议对应的上级域插件。数据对接***通过包括上级域插件的上级域对接模块和包括下级域插件的下级域对接模块实现上级域和下级域之间的数据对接。
请参阅图4,本发明实施例提供了一种数据对接***的示例性结构框图。如图4所示,数据对接***包括插件选择模块、下级域对接模块和上级域对接模块。其中,下级域对接模块和上级域对接模块均包括数据传输模块、协议模块、数据辅助模块和数据流通模块。
其中,插件选择模块负责选择不同的协议来处理数据对接。根据各协议的不同,开发对应的插件后,将插件添加到数据对接***中,然后在数据对接***的注册文件中添加上该插件的信息,若需要选择该插件进行对接,则在注册文件中将该插件的启动状态修改为启动,数据对接***在启动后,插件选择模块将会扫描注册文件,从而启动用于对接的插件,从而能够更加灵活的使用数据对接***。
协议模块为数据对接***中需要开发的模块(可以理解为上述插件,如上级域插件、下级域插件),针对上级域和下级域的传输协议进行开发,开发内容主要是根据上级域和下级域的传输协议的不同对数据进行处理转换,中间涉及到根据下级域的传输协议对数据进行解析,根据上级域的传输协议将数据进行对应的转换。且在实际对接中存在以下两种情况:
情况一、数据对接***提供方为下级域厂家,则下级域插件相当于固定模块,下级域插件与下级域厂家的内部***进行数据交互。在做数据对接时只需要开发上级域插件中的协议模块即可完成下级域和上级域的数据对接。
情况二、数据对接***提供方为上级域厂家,则上级域插件相当于固定模块,上级域插件与上级域厂家的内部***进行数据交互。在做数据对接时只需要开发下级域插件中的协议模块即可完成下级域和上级域的数据对接。
下级域对接模块中的数据传输模块可以看做接收模块,主要作用为针对下级域的传输方式进行开发,将下级域的数据对接到数据对接***中,可以为数据对接***接收下级域发送的数据,也可以主动去获取下级域的数据,在该模块中接收到数据后,再进行下一步的数据对接处理。
上级域对接模块中的数据传输模块可以看做发送模块,主要作用为针对上级域的传输方式进行开发,将经过协议模块处理的数据发送到上级域。该模块涉及的传输方式可以为多种,例如,可以为http(超文本传输协议)、web service、TCP(Transmission ControlProtocol,传输控制协议)等。
数据流通模块用于对上级域和下级域的数据进行转换和处理。根据上级域和下级域传输协议的不同,所需要数据的不同,可以在数据流通模块完成对数据的过滤、筛选等操作。例如,数据在经过下级域对接模块中的协议模块转换后进入到数据流通模块中,若需要进行过滤、筛选等操作,则可以在数据流通模块中对数据进行指定条件的过滤和筛选,在经过数据流通模块后,数据进入上级域对接模块中的协议模块继续处理。
数据辅助模块可以包含FTP(File Transfer Protocol,文件传输协议)、MQ(消息队列)、Web Service、http、TCP等各种对接方式的工具类,可以在开发数据传输模块时协助快速开发,以及为协议模块开发中可能涉及的编码转换、加解密、时间格式转换等辅助处理提供现成的工具,提高协议模块开发的便捷性。
图4所示数据对接***可以采用java反射技术和Spring来实现。在数据对接***启动时扫描注册文件,通过java反射技术调用所需的数据进行对接。鉴于Spring开发框架本身的轻量性以及IoC控制反转便于管理和测试,框架成熟,开发人员使用没有障碍,可以集成Spring MVC以及前端技术,技术生态好。所需的数据的对接可以基于Spring技术开发。
注册文件可以采用XML(Extensible Markup Language,可扩展标记语言)格式,可以包括以下定义,<Protocol>:定义协议,多个不同的插件则并列多个<Protocol>;<CLass>:Java反射调用的类路径,读取该文件后就会通过反射调用该类;<ProjectName>:对接名称;<Status>:是否启用该插件进行对接。
插件选择模块可以通过以下方式实现插件调用:启动数据对接***,启动数据对接***后插件选择模块加载注册文件,对注册文件中的内容进行解析,得到状态为开启的插件的信息。用java反射技术,根据从注册文件里解析出来的插件的信息加载对应的代码,并启动代码。通过java反射启动后的对接类会将后续对应的模块都进行加载,这其中使用到了Spring技术,加载完成后则该插件对接启动成功。
基于上述架构,在上级域对接模块中的协议模块(上级域插件)和下级域对接模块中的协议模块(下级域插件)均需要进行开发的场景下,协议模块开发流程可以如下:创建插件启动类com.demo.protocol.Action.java,该类作为插件的入口,通过反射调用该类,再通过Spring注入模块内其他数据对接方法。开发下级域对接模块中的协议模块,利用数据辅助模块实现对该协议模块进行下级域数据接收、处理功能的快速开发。创建数据转换类,将下级域发送的数据转换为上级域的数据协议类型。开发上级域对接模块中的协议模块,根据上级域对接方式,利用数据辅助模块开发数据发送类。将开发完成的协议模块打包成jar包加入到数据对接***中。在XML格式的注册文件上新增一个插件信息com.demo.protocol.Action.java,并将状态置为true。至此对接开发完成。
在只需要对上级域对接模块的协议模块或下级域对接模块的协议模块进行开发的场景下,协议模块开发流程可以如下:创建插件启动类com.demo.protocol.Action.java,该类作为插件的入口,通过反射调用该类,再通过Spring注入模块内其他数据对接方法。当需要对上级域对接模块的协议模块进行开发时,则下级域对接模块的协议模块可以开发为固定模块,固定为与下级域的传输协议相匹配,实现对接只需开发上级域对接模块的协议模块。当需要对下级域对接模块的协议模块进行开发时,则上级域对接模块的协议模块可以开发为固定模块,固定为与上级域的传输协议相匹配,实现对接只需开发下级域对接模块的协议模块。协议模块的开发流程包括:创建数据转换类,将下级域数据转换为上级域数据协议类型,将开发的协议模块打包成jar包加入到数据对接***中,在XML格式的注册文件上新增一个插件信息com.demo.protocol.Action.java,并将状态置为true。至此对接开发完成。
基于图4所示数据对接***,相应场景下的数据对接流程如下。
调用插件选择模块,根据上级域的传输协议和下级域的传输协议,从数据对接***的各插件中选择进行对接的插件(上级域插件和下级域插件),将选择出的上级域插件和下级域插件的状态修改为启动状态。
启动数据对接***后,数据对接***将所选择的上级域插件和下级域插件启动,并开始数据对接操作。
通过下级域对接模块的数据传输模块,将数据从下级域获取到数据对接***,然后将数据传输至下级域对接模块的协议模块,在该协议模块中根据下级域的传输协议对数据进行解析。在解析的过程中可能需要使用到数据辅助模块,使用数据辅助模块提供的工具进行编码解析、加解密等操作。
解析完成的数据进入数据流通模块,经过内部的数据流通,传输到上级域对接模块,其中,可以采用队列实现数据流通,也可以只直接进行数据传输,根据需求,数据流通模块还可以对数据进行设定条件过滤。
上级域对接模块的协议模块从数据流通模块中获取数据,并将数据按照上级域的传输协议进行转换(转换中也可能用到数据辅助模块),转换成上级域的传输协议支持的数据格式后,再通过上级域对接模块中的数据传输模块传输至上级域。根据上级域指定的对接方式的不同,上级域对接模块中的数据传输模块可以对应开发不同的发送方式,例如,可以包含http、web service、TCP等发送方式,进而将数据发送到上级域。从而完成数据对接。
需要说明的是,数据对接***中,数据传输模块、数据辅助模块和数据流通模块可以为各插件通用的固定的模块,相应地,对于与不同传输协议对应的插件的开发,可以为仅对协议模块进行开发,即协议模块为本实施例中的插件。在另一种实现方式中,数据对接***中,也可以是数据辅助模块和数据流通模块为各插件通用的固定的模块,相应地,对于与不同传输协议对应的插件的开发,可以为对协议模块和数据传输模块进行开发,即协议模块和数据传输模块构成本实施例中的插件。
请参阅图5,在上述基础上,本发明实施例还提供了一种数据对接装置,应用于数据对接***,所述数据对接装置包括:数据接收模块、协议获取模块和数据对接模块。
其中,数据接收模块用于接收待发送数据。
协议获取模块用于获取所述待发送数据的发送对象的传输协议和接收对象的传输协议。
数据对接模块用于在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接。
在一种实现方式中,所述数据对接***中包括与各传输协议分别对应的各插件,所述数据对接模块用于查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件,基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件,基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
可选地,与各传输协议分别对应的各插件通过以下步骤添加至所述数据对接***中:获取针对每个传输协议对应开发的插件,将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息。
需要说明的是,本实施例所提供的数据对接装置,其基本原理及产生的技术效果和上述应用于数据对接***的方法实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的方法实施例中相应内容。
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的数据对接方法。
相较于现有技术中仅单一适用的数据对接方案,如某一上级域提供协议文档和限定的对接方式信息给某一下级域,该下级域给予提供的文档和信息开发一个对应的数据对接***,从而实现该上级域和下级域的数据对接。该种仅单一适用的数据对接方案,针对不同传输协议需要分别重新开发一个数据对接***,开发耗时长,数据对接***没有固定的开发框架,开发复杂度高,数据对接***只针对单一上级域协议文档和对接方式开发,适用性差。而采用本发明实施例提供的数据对接方案,采用插件式开发框架,只针对协议的不同点和不同的对接方式进行插件开发,能够显著减低开发复杂度,减少代码开发量,减少数据对接开发的耗时,从而节约了项目成本。能够实现快速开发,耗时短,基于插件式开发框架,针对不同的传输协议,只需要切换不同的插件即可对接不同的上级域和下级域,适应性高,对接更为灵活,对接的稳定性亦更高。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种数据对接方法,其特征在于,应用于数据对接***,所述方法包括:
接收待发送数据;
获取所述待发送数据的发送对象的传输协议和接收对象的传输协议;
在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接;
所述数据对接***中包括与各传输协议分别对应的各插件,与各传输协议分别对应的各插件通过以下步骤添加至所述数据对接***中:
获取针对每个传输协议对应开发的插件;
将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息,所述注册文件采用XML格式,所述注册文件包括定义协议、java反射调用的类路径、对接名称以及是否启用所述插件进行对接;
从所述数据对接***中加载所述注册文件,并对所述注册文件中的内容进行解析,得到状态为开启的所述插件;
利用java反射技术,根据所述插件的信息加载对应的代码作为进行对接的代码,并启动所述进行对接的代码,进而使用Spring技术进行数据对接,包括:创建插件启动类,所述插件启动类为所述插件的入口,创建数据转换类,将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,将所述插件打包成jar包添加至所述数据对接***中,在所述注册文件中添加开发的插件的信息,并将状态设置为true,其中,所述插件的信息表征创建的所述插件启动类。
2.根据权利要求1所述的数据对接方法,其特征在于,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,包括:
查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件;
基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件;
基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
3.根据权利要求1所述的数据对接方法,其特征在于,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,包括:
判断是否需要对所述待发送数据进行过滤筛选,若是,则按设定条件对所述待发送数据进行过滤筛选,调用插件将过滤筛选之后的数据转换为支持所述接收对象的传输协议的目标数据;若否,则直接调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据。
4.一种数据对接装置,其特征在于,应用于数据对接***,所述数据对接装置包括:
数据接收模块,用于接收待发送数据;
协议获取模块,用于获取所述待发送数据的发送对象的传输协议和接收对象的传输协议;
数据对接模块,用于在所述发送对象的传输协议和所述接收对象的传输协议不匹配时,调用插件将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,并将所述目标数据发送至所述接收对象,以完成数据对接;
所述数据对接***中包括与各传输协议分别对应的各插件,与各传输协议分别对应的各插件通过以下步骤添加至所述数据对接***中:
获取针对每个传输协议对应开发的插件;
将开发的插件添加至所述数据对接***中,并在所述数据对接***的注册文件中添加开发的插件的信息,所述注册文件采用XML格式,所述注册文件包括定义协议、java反射调用的类路径、对接名称以及是否启用所述插件进行对接;
从所述数据对接***中加载所述注册文件,并对所述注册文件中的内容进行解析,得到状态为开启的所述插件;
利用java反射技术,根据所述插件的信息加载对应的代码作为进行对接的代码,并启动所述进行对接的代码,进而使用Spring技术进行数据对接,包括:创建插件启动类,所述插件启动类为所述插件的入口,创建数据转换类,将所述待发送数据转换为支持所述接收对象的传输协议的目标数据,将所述插件打包成jar包添加至所述数据对接***中,在所述注册文件中添加开发的插件的信息,并将状态设置为true,其中,所述插件的信息表征创建的所述插件启动类。
5.根据权利要求4所述的数据对接装置,其特征在于,所述数据对接模块用于查找出与所述发送对象的传输协议对应的第一插件,查找出与所述接收对象的传输协议对应的第二插件,基于所述第一插件对所述待发送数据进行解析,得到所述待发送数据的数据内容并将所述数据内容传输至所述第二插件,基于所述第二插件将所述数据内容转换为支持所述接收对象的传输协议的目标数据。
6.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至3中任一项所述的数据对接方法。
CN201911189107.4A 2019-11-28 2019-11-28 数据对接方法、装置和计算机可读存储介质 Active CN112866182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911189107.4A CN112866182B (zh) 2019-11-28 2019-11-28 数据对接方法、装置和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911189107.4A CN112866182B (zh) 2019-11-28 2019-11-28 数据对接方法、装置和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112866182A CN112866182A (zh) 2021-05-28
CN112866182B true CN112866182B (zh) 2023-05-23

Family

ID=75985244

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911189107.4A Active CN112866182B (zh) 2019-11-28 2019-11-28 数据对接方法、装置和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112866182B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113783893A (zh) * 2021-09-29 2021-12-10 远景智能国际私人投资有限公司 数据传输方法、装置及***
CN115037639B (zh) * 2022-07-14 2023-10-31 浙江极氪智能科技有限公司 边缘数据平台接口信息的处理方法、装置、设备及介质

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297381A (zh) * 2012-02-22 2013-09-11 阿里巴巴集团控股有限公司 一种基于插件的业务访问方法及其***
CN103944814A (zh) * 2014-04-29 2014-07-23 深圳市天维尔通讯技术有限公司 一种数据交换方法和***及一种网关服务器
CN104852971A (zh) * 2015-04-24 2015-08-19 青岛海尔智能家电科技有限公司 一种插件式协议装置及基于插件式协议的数据通信方法
CN105389222A (zh) * 2015-12-15 2016-03-09 中国科学院声学研究所 一种动态调用原生接口的方法、装置和***
CN105893094A (zh) * 2016-03-31 2016-08-24 百度在线网络技术(北京)有限公司 应用程序插件化的实现方法和装置
CN106850758A (zh) * 2016-12-30 2017-06-13 广州慧扬信息***科技有限公司 应用于医院信息***的数据交换方法
CN107332857A (zh) * 2017-07-31 2017-11-07 腾讯科技(深圳)有限公司 一种网络数据传输方法、装置、***和存储介质
CN107734028A (zh) * 2017-10-12 2018-02-23 佛山伊贝尔科技有限公司 一种数据安全存储的物联网网关***及其实现方法
CN108377232A (zh) * 2018-01-29 2018-08-07 杭州鸿泉物联网技术股份有限公司 一种多协议通信方法及装置
CN110287041A (zh) * 2019-06-28 2019-09-27 苏州亿歌网络科技有限公司 一种业务数据发送方法、装置、设备及存储介质
CN110417766A (zh) * 2019-07-22 2019-11-05 深圳市酷达通讯有限公司 一种协议解析的方法和装置

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103297381A (zh) * 2012-02-22 2013-09-11 阿里巴巴集团控股有限公司 一种基于插件的业务访问方法及其***
CN103944814A (zh) * 2014-04-29 2014-07-23 深圳市天维尔通讯技术有限公司 一种数据交换方法和***及一种网关服务器
CN104852971A (zh) * 2015-04-24 2015-08-19 青岛海尔智能家电科技有限公司 一种插件式协议装置及基于插件式协议的数据通信方法
CN105389222A (zh) * 2015-12-15 2016-03-09 中国科学院声学研究所 一种动态调用原生接口的方法、装置和***
CN105893094A (zh) * 2016-03-31 2016-08-24 百度在线网络技术(北京)有限公司 应用程序插件化的实现方法和装置
CN106850758A (zh) * 2016-12-30 2017-06-13 广州慧扬信息***科技有限公司 应用于医院信息***的数据交换方法
CN107332857A (zh) * 2017-07-31 2017-11-07 腾讯科技(深圳)有限公司 一种网络数据传输方法、装置、***和存储介质
CN107734028A (zh) * 2017-10-12 2018-02-23 佛山伊贝尔科技有限公司 一种数据安全存储的物联网网关***及其实现方法
CN108377232A (zh) * 2018-01-29 2018-08-07 杭州鸿泉物联网技术股份有限公司 一种多协议通信方法及装置
CN110287041A (zh) * 2019-06-28 2019-09-27 苏州亿歌网络科技有限公司 一种业务数据发送方法、装置、设备及存储介质
CN110417766A (zh) * 2019-07-22 2019-11-05 深圳市酷达通讯有限公司 一种协议解析的方法和装置

Also Published As

Publication number Publication date
CN112866182A (zh) 2021-05-28

Similar Documents

Publication Publication Date Title
JP6912469B2 (ja) アクセス要求変換方法および装置
US8219970B2 (en) XML push and remote execution of a wireless applications
US11544125B2 (en) Method and system for processing a stream of incoming messages sent from a specific input message source and validating each incoming message of that stream before sending them to a specific target system
CN112866182B (zh) 数据对接方法、装置和计算机可读存储介质
US20150135256A1 (en) Disambiguating conflicting content filter rules
US9832222B2 (en) Anti-malware mobile content data management apparatus and method
US9253020B2 (en) Web service interaction in a dynamically extensible business application
CN115516840A (zh) 一种信息处理方法、设备、***、介质、芯片及程序
CN111629040B (zh) 云边协同方法、装置、***、设备和介质
CN106484488B (zh) 一体化云编译方法和***
CN104954363A (zh) 用于生成接口文档的方法和装置
CN112689020B (zh) 一种消息传输方法、消息中间件、电子设备及存储介质
US7937497B2 (en) Apparatus for selectively copying at least portions of messages in a distributed computing system
Ritter Experiences with business process model and notation for modeling integration patterns
US7523101B2 (en) Method and system for annotating configuration files
US20190318036A1 (en) Topic Based Publish and Parametric Subscribe Pattern
Bertram et al. Secure web service clients on mobile devices
Ruf et al. Network services on service extensible routers
Schmiedmayer et al. Reducing the impact of breaking changes to web service clients during web API evolution
CN109600403B (zh) 一种发送信息的方法及装置
US20050204359A1 (en) Context objects for accessing message content
CN115225342B (zh) 漏洞扫描方法、装置、***、电子装置和存储介质
Cameron et al. The hosting environment of the advanced resource connector middleware
Malek et al. A SOAP container model for e-Business messaging requirements
CN114584525A (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