CN108491281A - 在软件系统之间进行交互的方法、可读介质及电子设备 - Google Patents
在软件系统之间进行交互的方法、可读介质及电子设备 Download PDFInfo
- Publication number
- CN108491281A CN108491281A CN201810239571.9A CN201810239571A CN108491281A CN 108491281 A CN108491281 A CN 108491281A CN 201810239571 A CN201810239571 A CN 201810239571A CN 108491281 A CN108491281 A CN 108491281A
- Authority
- CN
- China
- Prior art keywords
- software systems
- information
- called side
- adapter
- attribute
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
Abstract
本发明提供一种在软件系统之间进行交互的方法,包括以下步骤:创建适配器;获取软件系统中的每一个软件系统的属性信息,并将每一个软件系统的属性信息注册到适配器中;软件系统中的作为调用方的软件系统将调用请求发送至适配器,适配器读取调用请求之后,根据作为调用方的软件系统的属性信息和作为被调用方的软件系统的属性信息,将调用请求转换成作为被调用方的软件系统能够接受的格式,并将转换后的调用请求发送至作为被调用方的软件系统;作为被调用方的软件系统根据调用请求将信息反馈至所述适配器;以及适配器将所述信息进行格式处理后发送至作为调用方的软件系统。还涉及相关的计算机可读存储介质以及相关电子设备。
Description
技术领域
本发明涉及软件工程领域,尤其涉及一种在软件系统之间进行交互的方法、相关的计算机可读存储介质以及电子设备。
背景技术
在软件工程领域,不断增长的业务需求会导致不同的系统或者应用之间进行频繁的交互,但是不同的系统或者应用之间信息传递的格式不同,导致不同系统或者应用之间无法直接进行交互。传统的方法是在需要进行交互的系统中选择一个系统,在该系统上新增接口来适应其他系统信息的格式,但是一旦对外交互的系统数量增多,新增接口的数量必然也会增长,这样的交互成本太大,而且也并不方便。
因此,需要一种方便在系统之间进行交互的方法。
发明内容
为了克服上述问题的至少一个方面,本发明实施例提供一种在软件系统之间进行交互的方法。在不同的系统或者应用之间,创建适配器,适配器充当通信的中转站,将信息装换成需要的格式进行传递,这样一来,每个系统都不用新增接口,只需要在适配器中注册即可,大大减少了不同系统之间交互的成本,也便于维护和扩展。
根据本发明的一个方面,提供一种在软件系统之间进行交互的方法,包括如下步骤:
步骤S1,创建用于使不同的软件系统之间能够进行交互的适配器;
步骤S2,获取软件系统中的每一个软件系统的属性信息,并将每一个软件系统的属性信息注册到适配器中;
步骤S3,软件系统中的作为调用方的软件系统将调用请求发送至适配器,适配器读取调用请求之后,根据作为调用方的软件系统的属性信息和作为被调用方的软件系统的属性信息,将调用请求转换成作为被调用方的软件系统能够接受的格式,并将转换后的调用请求发送至作为被调用方的软件系统;
步骤S4,作为被调用方的软件系统根据调用请求将信息反馈至适配器;以及
步骤S5,适配器将信息进行格式处理后发送至作为调用方的软件系统。
根据一些实施例,属性信息包括:作为调用方的软件系统的地址信息、作为被调用方的软件系统的地址信息、作为调用方的软件系统所发送的调用请求的格式、作为调用方的软件系统所接收的信息的格式、作为被调用方的软件系统的能够接受的被调用请求的格式以及作为被调用方的软件系统的所发送的信息的格式。
根据一些实施例,步骤S2还包括以下步骤:对每一个软件系统中的属性信息进行修改,并且重新获取修改后的属性信息。
根据一些实施例,步骤S2还包括以下步骤:将注册到适配器中的属性信息存储在关系数据库中,并对关系数据库进行备份。
根据一些实施例,步骤S2还包括以下步骤:获取每一个软件系统的异常处理信息的属性,并将异常处理信息的属性注册到适配器中。
根据一些实施例,在步骤S5中,适配器将信息进行格式处理包括以下步骤:适配器判断由作为被调用方的软件系统所反馈的信息是否为异常信息,如果是异常信息,适配器根据作为调用方的软件系统注册到适配器中的异常处理信息的属性对异常信息进行处理,否则,适配器根据作为调用方的软件系统注册到适配器中的属性信息对所反馈的信息进行格式处理。
根据一些实施例,适配器在判断所反馈的信息是异常信息之后,适配器根据作为被调用方的软件系统的异常处理信息的属性对异常信息进行分类解析,然后根据作为调用方的软件系统的异常处理信息的属性将异常信息转换成作为调用方的软件系统能够接收的形式。
根据一些实施例,异常处理信息的属性包括异常类型和异常格式。
根据本发明的另一个方面,提供一种计算机可读存储介质,其上存储有可执行指令,指令在由处理器执行时,可以实现根据上述实施例中的任一项所述的在软件系统之间进行交互的方法的步骤。
根据本发明的又一个方面,提供一种电子设备,其包括:
存储器,用于存储可执行指令;以及
处理器,用于执行存储器中存储的可执行指令,以实现根据上述实施例中任一项所述的在软件系统之间进行交互的方法的步骤。
与现有技术相比,本发明具有以下优点:创建了适配器,适配器作为交互的中转站,具有功能适配协调的作用,通过适配器将信息进行格式的转换,使得交互的双方或者多方不用新增接口就可以进行交互,大大减少了不同系统之间进行交互的成本,也使得软件系统从交互的格式问题上脱离出来,只专注于内容的传递。
附图说明
通过下文中参照附图对本发明所作的描述,本发明的其它目的和优点将显而易见,并可帮助对本发明有全面的理解。
图1是实施根据本发明实施例的在软件系统之间进行交互的方法的流程图;
图2是示出实施根据本发明实施例的在软件系统之间进行交互的方法的信息路线图;
图3是根据本发明实施例的计算机可读存储介质的结构示意图;
图4是根据本发明实施例的电子设备的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。除非另外定义,本发明使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。
本发明提供一种在软件系统之间进行交互的方法,根据图1所示,该方法包括以下步骤:
步骤S1,创建用于使不同的软件系统之间能够进行交互的适配器。
适配器,就是指对不同软件系统的信息进行格式匹配,达到让不同软件系统能够进行交互目的的装置。需要说明的是,这里的“不同的系统”指的是两个或者多个彼此独立的系统,其既可以是不同类型和/或具有不同功能的系统,;也可以是相同类型和/或具有相同功能的系统。当然,这里的“系统”也可以包括应用,所以不同系统之间的交互可以是系统与应用之间,例如,系统A和应用C;也可以是应用与应用之间,例如,应用C和应用C之间,以及应用C和应用D之间。
步骤S2,获取软件系统中的每一个软件系统的属性信息,并将每一个软件系统的属性信息注册到适配器中。
每一个软件系统的属性信息是调用关系的基础,这些属性信息中包括了每一个软件系统的地址,接收、响应的信息结构等关键信息,有了这些信息才能形成一个完整的调用关系。例如,系统A想调用系统B,系统A就会把调用请求发送给适配器,适配器想把请求传递给系统B,就必须知道系统B的地址,从而根据地址对请求进行传递。将每个软件系统的属性信息注册到适配器中,就是为了适配器能够在信息传递的过程中调用这些属性信息,从而完成系统之间的交互。
在一些可能的实施例中,系统的属性信息可以包括:作为调用方的软件系统的地址信息、作为被调用方的软件系统的地址信息、作为调用方的软件系统所发送的调用请求的格式、作为调用方的软件系统所接收的信息的格式、作为被调用方的软件系统的能够接受的被调用请求的格式以及作为被调用方的软件系统的所发送的信息的格式。当然,软件系统的属性信息并不局限于上述信息。
在一些可能的实施例中,这些属性信息可以随时进行修改,例如,系统A更改了作为调用方的软件系统所发送的调用请求的格式或者系统B更改了作为被调用方的软件系统的能够接受的被调用请求的格式,只需要重新获取修改后的属性信息,将修改后的属性信息重新注册到适配器中即可。
在一些可能的实施例中,可以将注册到适配器中的属性信息存储在关系数据库中,例如可以是Mysql,并对关系数据库进行备份,以防注册的属性信息的丢失。在每一个系统更改了属性信息并重新注册后,关系数据库会对数据进行更新,并对更新后的数据库进行备份。关系数据库是采用关系模型作为数据组织方式的数据库。关系数据库的特点在于它将每个具有相同属性的数据独立地存储在一个表中。对任一表而言,用户可以新增、删除和修改表中的数据,而不会影响表中的其他数据。正是基于关系数据库的这些优点,每一个系统可以随时修改各自的属性信息而不受限制。
在一些可能的实施例中,可以获取每一个软件系统的异常处理信息的属性,并将异常处理信息的属性注册到所述适配器中。在系统之间交互时,异常是经常会发生的,注册异常处理信息的属性能够最大程度上减小异常的影响,保证交互的顺利进行。
步骤S3,软件系统中的作为调用方的软件系统将调用请求发送至适配器,适配器读取调用请求之后,根据作为调用方的软件系统的属性信息和作为被调用方的软件系统的属性信息,将调用请求转换成作为被调用方的软件系统能够接受的格式,并将转换后的调用请求发送至作为被调用方的软件系统。
软件系统中作为调用方的软件系统将调用请求发送给适配器,通过适配器转换格式后将请求传输给被调用方,适配器接收请求并读取后,会调取调用方和被调用方双方注册的属性信息,根据这两方的属性信息,例如,可以是作为被调用方的软件系统的地址信息,找到被调用方;还可以是作为被调用方的软件系统的能够接受的被调用请求的格式,确定发送到被调用方的请求的格式。在找到被调用方并且确定了被调用方可接收的格式之后,适配器可以将调用请求转换成适合于被调用方的格式,并且,可以将转换后的调用请求发送给被调用方。
步骤S4,作为被调用方的软件系统根据调用请求将信息反馈至适配器。
被调用方接收调用请求并读取,然后按照之前注册的属性信息,例如,可以是作为被调用方的软件系统的所发送的信息的格式,将调用方需要的信息反馈到适配器。
步骤S5,适配器将信息进行格式处理后发送至作为调用方的软件系统。
适配器接收到反馈的信息并读取,按照调用方注册的属性信息,例如,可以是作为调用方的软件系统所接收的信息的格式,将反馈的信息进行格式处理,然后将处理后的信息发送到调用方。
在一些可能的实施例中,适配器在对反馈的信息进行格式处理之前可以判断反馈的信息是否为异常信息。如果反馈信息是异常信息,适配器会根据作为调用方的软件系统注册到适配器中的异常处理信息的属性对异常信息进行处理,将异常信息转换成调用方可以接受的异常信息格式;如果反馈信息不是异常信息,那么还是可以根据作为调用方的软件系统注册到适配器中的属性信息对所反馈的信息进行格式处理。
在一些可能的实施例中,适配器在判断所反馈的信息是异常信息之后,可以根据作为被调用方的软件系统的异常处理信息的属性对异常信息进行分类解析,从而了解该异常信息所属的异常类型,然后根据作为调用方的软件系统的异常处理信息的属性将异常信息转换成作为调用方的软件系统能够接收的形式。
在一些可能的实施例中,异常处理信息的属性可以包括异常类型和异常格式。这样,适配器在判断所反馈的信息是异常信息之后,可以根据异常类型和异常格式对异常信息进行解析,两者可以同时进行,大大减少了解析的时间。
本发明实施例通过加入适配器,使作为调用方的软件系统和作为被调用方的软件系统不用再担心信息的格式问题,同时适配器本身高可用性也保证了交互的可靠性。另外,适配器将异常信息的处理流程单独提出并规格化,进一步提高了系统的可维护性。
下面结合图2对整个交互过程进行简单的描述。
整个交互过程包括:调用方201,适配器202和被调用方203。
调用方201想对被调用方203进行调用,首先将调用请求发送给适配器202,适配器202接收请求后,将调用请求转换成被调用方203能够接收的格式并发送给被调用方203,被调用方203收到请求后,将调用方201想要的信息反馈给适配器202,适配器202将反馈的信息转换成调用方201能够接收的格式并发送给调用方201。
基于同一发明构思,参考图3所示,本发明还提供一种计算机可读存储介质301,其上存储有可执行指令302,可执行指令302在由一个或多个处理器执行时,可以实现根据上述实施例中的任一项所述的在软件系统之间进行交互的方法的步骤。
基于同一发明构思,参考图4所示,本发明还提供一种电子设备401,该电子设备401包括:
存储器410,用于存储可执行指令411;以及
处理器420,用于执行存储器410中存储的可执行指令411,以实现如上述实施例中任一项所述的在软件系统之间进行交互的方法的步骤。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种在软件系统之间进行交互的方法,其特征在于,所述方法包括以下步骤:
步骤S1,创建用于使不同的软件系统之间能够进行交互的适配器;
步骤S2,获取所述软件系统中的每一个软件系统的属性信息,并将所述每一个软件系统的属性信息注册到所述适配器中;
步骤S3,所述软件系统中的作为调用方的软件系统将调用请求发送至所述适配器,所述适配器读取所述调用请求之后,根据作为调用方的软件系统的属性信息和作为被调用方的软件系统的属性信息,将所述调用请求转换成作为被调用方的软件系统能够接受的格式,并将转换后的调用请求发送至作为被调用方的软件系统;
步骤S4,作为被调用方的软件系统根据所述调用请求将信息反馈至所述适配器;以及
步骤S5,所述适配器将所述信息进行格式处理后发送至作为调用方的软件系统。
2.根据权利要求1所述的方法,其特征在于,所述属性信息包括:作为调用方的软件系统的地址信息、作为被调用方的软件系统的地址信息、作为调用方的软件系统所发送的调用请求的格式、作为调用方的软件系统所接收的信息的格式、作为被调用方的软件系统的能够接受的被调用请求的格式以及作为被调用方的软件系统的所发送的信息的格式。
3.根据权利要求1所述的方法,其特征在于,所述步骤S2还包括以下步骤:对所述每一个软件系统中的属性信息进行修改,并且重新获取修改后的属性信息。
4.根据权利要求1所述的方法,其特征在于,所述步骤S2还包括以下步骤:将注册到所述适配器中的所述属性信息存储在关系数据库中,并对所述关系数据库进行备份。
5.根据权利要求1所述的方法,其特征在于,所述步骤S2还包括以下步骤:获取所述每一个软件系统的异常处理信息的属性,并将所述异常处理信息的属性注册到所述适配器中。
6.根据权利要求5所述的方法,其特征在于,在所述步骤S5中,所述适配器将所述信息进行格式处理包括以下步骤:所述适配器判断由作为被调用方的软件系统所反馈的信息是否为异常信息,如果是异常信息,所述适配器根据作为调用方的软件系统注册到所述适配器中的异常处理信息的属性对所述异常信息进行处理,否则,所述适配器根据作为调用方的软件系统注册到所述适配器中的属性信息对所反馈的信息进行格式处理。
7.根据权利要求6所述的方法,其特征在于,所述适配器在判断所反馈的信息是异常信息之后,所述适配器根据作为被调用方的软件系统的异常处理信息的属性对所述异常信息进行分类解析,然后根据作为调用方的软件系统的异常处理信息的属性将所述异常信息转换成作为调用方的软件系统能够接收的形式。
8.根据权利要求5-7中的任一项所述的方法,其特征在于,所述异常处理信息的属性包括异常类型和异常格式。
9.一种计算机可读存储介质,其上存储有可执行指令,所述指令在由处理器执行时,实现根据权利要求1-8中的任一项所述的在软件系统之间进行交互的方法的步骤。
10.一种电子设备,包括:
存储器,用于存储可执行指令;以及
处理器,用于执行所述存储器中存储的可执行指令,以实现根据权利要求1-8中任一项所述的在软件系统之间进行交互的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810239571.9A CN108491281A (zh) | 2018-03-22 | 2018-03-22 | 在软件系统之间进行交互的方法、可读介质及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810239571.9A CN108491281A (zh) | 2018-03-22 | 2018-03-22 | 在软件系统之间进行交互的方法、可读介质及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108491281A true CN108491281A (zh) | 2018-09-04 |
Family
ID=63319114
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810239571.9A Pending CN108491281A (zh) | 2018-03-22 | 2018-03-22 | 在软件系统之间进行交互的方法、可读介质及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108491281A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110806932A (zh) * | 2019-10-30 | 2020-02-18 | 广东博智林机器人有限公司 | 一种算法调度方法及装置 |
CN111597242A (zh) * | 2020-05-13 | 2020-08-28 | 上海电机系统节能工程技术研究中心有限公司 | 供应链数据对接方法、装置、电子设备和存储介质 |
CN111597777A (zh) * | 2020-05-15 | 2020-08-28 | 上海电机系统节能工程技术研究中心有限公司 | 物料数据处理方法、装置和电子设备 |
CN112612630A (zh) * | 2020-12-29 | 2021-04-06 | 太平金融科技服务(上海)有限公司 | 系统调用处理方法、装置、计算机设备和存储介质 |
CN112860463A (zh) * | 2021-03-22 | 2021-05-28 | 平安商业保理有限公司 | 业务请求转发方法、装置、计算机设备和可读存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995906A (zh) * | 2014-06-13 | 2014-08-20 | 北京京东尚科信息技术有限公司 | 一种异常处理方法和装置 |
CN104636211A (zh) * | 2015-03-10 | 2015-05-20 | 中国农业银行股份有限公司 | 一种软件系统间的信息交互方法及中间件系统 |
CN107193668A (zh) * | 2017-04-26 | 2017-09-22 | 深圳中兴网信科技有限公司 | 接口服务端的调用方法及系统 |
CN107634948A (zh) * | 2017-09-19 | 2018-01-26 | 金在(北京)金融信息服务有限公司 | 数据交换方法和系统 |
-
2018
- 2018-03-22 CN CN201810239571.9A patent/CN108491281A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103995906A (zh) * | 2014-06-13 | 2014-08-20 | 北京京东尚科信息技术有限公司 | 一种异常处理方法和装置 |
CN104636211A (zh) * | 2015-03-10 | 2015-05-20 | 中国农业银行股份有限公司 | 一种软件系统间的信息交互方法及中间件系统 |
CN107193668A (zh) * | 2017-04-26 | 2017-09-22 | 深圳中兴网信科技有限公司 | 接口服务端的调用方法及系统 |
CN107634948A (zh) * | 2017-09-19 | 2018-01-26 | 金在(北京)金融信息服务有限公司 | 数据交换方法和系统 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110806932A (zh) * | 2019-10-30 | 2020-02-18 | 广东博智林机器人有限公司 | 一种算法调度方法及装置 |
CN111597242A (zh) * | 2020-05-13 | 2020-08-28 | 上海电机系统节能工程技术研究中心有限公司 | 供应链数据对接方法、装置、电子设备和存储介质 |
CN111597777A (zh) * | 2020-05-15 | 2020-08-28 | 上海电机系统节能工程技术研究中心有限公司 | 物料数据处理方法、装置和电子设备 |
CN111597777B (zh) * | 2020-05-15 | 2023-06-02 | 上海电机系统节能工程技术研究中心有限公司 | 物料数据处理方法、装置和电子设备 |
CN112612630A (zh) * | 2020-12-29 | 2021-04-06 | 太平金融科技服务(上海)有限公司 | 系统调用处理方法、装置、计算机设备和存储介质 |
CN112860463A (zh) * | 2021-03-22 | 2021-05-28 | 平安商业保理有限公司 | 业务请求转发方法、装置、计算机设备和可读存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108491281A (zh) | 在软件系统之间进行交互的方法、可读介质及电子设备 | |
EP3389219A1 (en) | Access request conversion method and device | |
US9088622B2 (en) | Dynamic client registration for server push events in long polling scenarios | |
CN105282128B (zh) | 一种基于长连接的双向调用方法及系统 | |
CN101436148A (zh) | 集成客户端及进行桌面应用与网络web应用交互的方法 | |
CN112788074A (zh) | 数据发送方法、处理方法、接收方法及其设备、存储介质 | |
CN103139157A (zh) | 一种基于socket的网络通信方法、装置及系统 | |
CN106096997A (zh) | 清单组价方法、系统及装置 | |
CN101854401A (zh) | 数据传输设备、方法及数据同步方法 | |
CN101895531A (zh) | 一种客户端设备、多媒体数据卸载系统及卸载方法 | |
CN102811230B (zh) | 一种基于应用集成的资源调用方法和系统 | |
CN114448719A (zh) | 一种报文交互方法、装置和系统 | |
CN102594874B (zh) | 一种同步处理方法和装置 | |
KR101857020B1 (ko) | 서버에서 제공되는 서비스를 관리하기 위한 단말기의 장치 및 방법 | |
JP4550604B2 (ja) | 設定情報同期プログラム | |
CN107463390A (zh) | 一种软件升级方法及升级服务器 | |
CN102984055A (zh) | 一种issu的软重启升级方法和设备 | |
WO2024001754A1 (zh) | 版本控制方法、装置、电子设备及存储介质 | |
US20170139758A1 (en) | Nondeterministic Operation Execution Environment Utilizing Resource Registry | |
CN114338584B (zh) | 消息撤回方法和消息传输系统 | |
CN108924237A (zh) | 一种信息传输方法、服务器、系统及计算机存储介质 | |
CN112511636B (zh) | 数据传输系统、方法、装置、计算机设备及存储介质 | |
CN107070872A (zh) | 一种用于客户端的数据处理方法和装置 | |
CN103873564A (zh) | 一种在多服务器负载均衡条件下实现SignalR双工通信的方法 | |
CN111314914B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180904 |
|
RJ01 | Rejection of invention patent application after publication |