CN112114980A - 支持跨平台业务的中间件实现方法、智能终端、存储介质 - Google Patents
支持跨平台业务的中间件实现方法、智能终端、存储介质 Download PDFInfo
- Publication number
- CN112114980A CN112114980A CN202010898493.0A CN202010898493A CN112114980A CN 112114980 A CN112114980 A CN 112114980A CN 202010898493 A CN202010898493 A CN 202010898493A CN 112114980 A CN112114980 A CN 112114980A
- Authority
- CN
- China
- Prior art keywords
- interface
- middleware
- version
- xfs standard
- xfs
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 44
- 238000004806 packaging method and process Methods 0.000 claims abstract description 36
- 230000006978 adaptation Effects 0.000 claims abstract description 13
- 230000006870 function Effects 0.000 claims description 13
- 238000005538 encapsulation Methods 0.000 claims description 9
- 230000003044 adaptive effect Effects 0.000 claims description 6
- 238000012986 modification Methods 0.000 abstract description 14
- 230000004048 modification Effects 0.000 abstract description 14
- 238000011161 development Methods 0.000 abstract description 12
- 230000002093 peripheral effect Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 230000003993 interaction Effects 0.000 description 5
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 238000004458 analytical method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 235000019580 granularity Nutrition 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000009471 action Effects 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/71—Version control; Configuration management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/70—Software maintenance or management
- G06F8/76—Adapting program code to run in a different environment; Porting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了支持跨平台业务的中间件实现方法、智能终端、存储介质,方法包括:获取XFS标准的若干不同版本,并对不同版本进行兼容性封装,生成XFS标准的兼容版本;获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对第一接口和所述第二接口进行统一封装,生成中间件;将中间件接口与自助设备的接口以及应用的接口进行连接,加载中间件,以使中间件支持跨平台业务。本发明解决各种硬件和软件接口差异的问题,实现应用业务的快速开发和修改,提高产品的使用灵活性,增加产品适应面的广度。
Description
技术领域
本发明涉及通讯技术领域,尤其涉及的是支持跨平台业务的中间件实现方法、智能终端、存储介质。
背景技术
为了解决各厂商硬件接口差异的问题,欧洲标准化委员会(CEN)为部分金融外围设备提供一套标准化的接口,即CEN/XFS标准接口,可直接提升金融机构的生产力和应用的适应能力。XFS将纳入标准的模块如读卡器,密码键盘等硬件提供的功能进行统一的接口封装,从而屏蔽了多厂商之间的差异,但该方案无法解决应用开发过程中的业务逻辑实现与底层细节处理混杂的问题。为了实现应用业务的快速开发及修改,需要提供一种介于上层应用和底层硬件提供商之间的中间件软件,用于屏蔽XFS标准接口调用及返回结果处理的细节,从各种业务粒度上对上层应用提供统一接口,极大的方便了应用平台新增业务逻辑的开发或原有逻辑的修改。
目前国际上主流的中间件全都基于XFS标准开发,但XFS标准是基于WINDOWS系统提出的,所以这些中间件也仅适用于WINDOWS系统,不支持LINUX系统,这并不符合我国对于金融行业自主安全可控的要求;XFS标准至今已有3.0、3.1、3.2、3.3等多个版本,每个厂商硬件接口封装遵循的标准并不能统一,导致这些中间件对各个厂商的硬件模块的适配有困难,需要多套中间件对应各个版本的标准;且XFS标准仅对国际上通用的部分金融外设提供了统一封装接口规范,但对于一些我国特有的设备如二代证读卡器、包含我国加密算法的密码键盘或一些暂未纳入标准的模块如指纹仪、手写板等,现有中间件并没有支持。
因此,现有技术还有待改进和发展。
发明内容
本发明要解决的技术问题在于,针对现有技术的上述缺陷,提供支持跨平台业务的中间件实现方法、智能终端、存储介质,旨在解决现有技术中中间件无法支持Windows系统和Linux系统的跨平台业务,无法同时支持XFS标准的若干不同版本和未纳入XFS标准的其他接口的问题。
本发明解决问题所采用的技术方案如下:
第一方面,本发明实施例提供一种支持跨平台业务的中间件实现方法、智能终端、存储介质,其中,所述方法包括:
获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
在一种实现方式中,所述获取XFS标准的若干不同版本包括:
确定所述XFS标准的若干不同版本的版本号;
根据所述版本号,获取所述XFS标准的相应版本。
在一种实现方式中,所述对所述不同版本进行兼容性封装,生成XFS标准的兼容版本包括:
对所述XFS标准的不同版本进行版本适配,得到适配版本;
将新增功能添加至所述适配版本,生成兼容版本。
在一种实现方式中,所述对所述XFS标准不同版本进行版本适配,得到适配版本包括:
根据版本协商方法,将所述XFS标准不同版本分配不同内存空间;
根据所述XFS标准不同版本生成相对应的字段,并将所述XFS标准不同版本和所述字段存储在所述内存空间,生成适配版本。
在一种实现方式中,所述获取不同系统下所述兼容版本的第一接口包括:
获取LINUX系统下所述兼容版本的第一接口;
获取WINDOWS系统下所述兼容版本的第一接口。
在一种实现方式中,所述获取未纳入XFS标准的第二接口包括:
确定所述未纳入XFS标准的第二接口的版本号;
根据所述未纳入XFS标准的第二接口的版本号,获取所述未纳入XFS标准的第二接口的版本。
在一种实现方式中,所述对所述第一接口和所述第二接口进行统一封装包括:
将所述LINUX系统下所述兼容版本的第一接口的地址总线,WINDOWS系统下所述兼容版本的第一接口的地址总线和所述第二接口的地址总线进行统一封装;
将所述LINUX系统下所述兼容版本的第一接口的数据总线,WINDOWS系统下所述兼容版本的第一接口的数据总线和所述第二接口的数据总线进行统一封装。
在一种实现方式中,所述将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务:
将所述中间件接口的地址总线与自助设备的接口的地址总线连接,并将所述中间件接口的地址总线与所述应用的接口地址总线连接;
将所述中间件接口的数据总线与自助设备的接口的数据总线连接,并将所述中间件接口的数据总线与所述应用的接口数据总线连接;
程序运行后,加载所述中间件,实现对跨平台业务的支持。
第二方面,本发明实施例还提供一种支持跨平台业务的中间件实现装置,其中,所述装置包括:
XFS标准的若干不同版本的获取单元,用于获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
中间件生成单元,用于获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
连接单元,用于将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
第三方面,本发明实施例还提供一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如上述任意一项所述的支持跨平台业务的中间件实现方法。
第四方面,本发明实施例还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如上述中任意一项所述的支持跨平台业务的中间件实现方法。
本发明的有益效果:本发明实施例首先获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;然后获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;最后将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务;可见,本发明实施例中的中间件支持Windows系统和Linux系统的跨平台业务,同时支持XFS标准的若干不同版本,还支持未纳入XFS标准的其他接口,解决各种硬件和软件接口差异的问题,实现应用业务的快速开发和修改,提高产品的使用灵活性,增加产品适应面的广度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1本发明实施例提供的支持跨平台业务的中间件实现方法流程示意图。
图2本发明实施例提供的支持跨平台业务的中间件实现装置的原理框图。
图3本发明实施例提供的智能终端的内部结构原理框图。
具体实施方式
本发明公开了支持跨平台业务的中间件实现方法、智能终端、存储介质,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
由于现有技术中,目前国际上主流的中间件全都基于XFS标准开发,但XFS标准是基于WINDOWS系统提出的,所以这些中间件也仅适用于WINDOWS系统,不支持LINUX系统,这并不符合我国对于金融行业自主安全可控的要求;XFS标准至今已有3.0、3.1、3.2、3.3等多个版本,每个厂商硬件接口封装遵循的标准并不能统一,导致这些中间件对各个厂商的硬件模块的适配有困难,需要多套中间件对应各个版本的标准;且XFS标准仅对国际上通用的部分金融外设提供了统一封装接口规范,但对于一些我国特有的设备如二代证读卡器、包含我国加密算法的密码键盘或一些暂未纳入标准的模块如指纹仪、手写板等,现有中间件并没有支持。
为了解决现有技术中的问题,本实施例提供了支持跨平台业务的中间件实现方法,通过所述方法,本发明中的中间件可以支持Windows系统和Linux系统的跨平台业务,无法同时支持XFS标准的若干不同版本和未纳入XFS标准的其他接口。实际中,所述自助设备指的是金融机构的自助设备,随着自助设备在各大金融机构的广泛普及使用,涌现出无数金融外围设备提供商,其提供的读卡器,密码键盘,存取款设备,摄像头,指纹仪,打印机等硬件设备各具特性。金融机构会采购同一类型不同厂商的自助设备,为了对外提供统一的金融服务,金融机构的应用提供商的传统做法是根据该类自助设备特有的业务直接调用设备中各硬件模块接口,将业务逻辑流程与底层硬件细节处理放在一起形成一套壳对外提供金融服务的应用。在这种情况下,针对不同厂商的自助设备,应用提供商需要开发多套应用,且当金融机构要求将自助设备中的某个硬件模块替换为其他厂商的硬件模块或需要调整业务逻辑时,应用的改造量大,导致改造周期长。因此,金融机构要求快速的更换硬件自助设备或新增修改业务的需求较难实现,同时,为了兼容同类设备的不同厂商硬件提供的接口,应用平台提供商也会花费大量的人力和时间进行重复开发,造成巨大资源浪费。因此,本发明实施例的中间件能够兼容各种接口且支持跨平台业务,这样当硬件或者软件在修改后也能很快的满足金融机构的需求。具体实施时,首先获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;然后获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;最后将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。可见,本发明实施例通过支持各种软硬件接口和支持跨平台设计实现了接口的统一封装,缩短了开发周期,提高的开发效率。
举例说明,欧洲标准化委员会为部分金融外围设备提供一套标准化的接口,即CEN/XFS标准接口,从一定程度上提升了金融机构的生产力和应用的适应能力,但是考虑到随着功能的增加,所述符合XFS标准的程序接口会不断升级而产生不同版本的XFS标准,传统的处理方法都是一个中间件对应一个版本的XFS标准,这样,给维护带来很大的困难,研发人员需要维护与多个版本的XFS标准相对应的中间件,并且还要做相应的修改,这给研发人员带来了很大的工作量。此外,有些硬件接口是满足XFS标准的,还有一些接口是未纳入到XFS标准的接口,例如具有保密作用的接口是没有纳入到XFS标准的,比如采用国密算法的密码键盘、二代证读卡器、指纹仪等仍存在厂商差异,传统的应用需要开发多套程序兼容这些差异,本发明实施例的中间件会将这些未纳入XFS标准的硬件模块按照常用业务需求对各类模块基本功能进行封装,对应用提供统一的接口,屏蔽未纳入XFS标准的硬件厂商之间的差异。这样,当所述被封装之后的中间件被加载后就可以实现跨平台业务,极大的方便了金融机构更换硬件厂商及应用业务需求开发及修改。
示例性方法
本实施例提供的支持跨平台业务的中间件实现方法,该方法应用于金融机构服务提供商的产品研发项目上。具体如图1所示,所述方法包括:
步骤S100、获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
具体地,XFS标准的作用是提供各类设备的标准接口,各大金融设备提供商按照接口规范来设计硬件接口,在传统的处理方法中,首先是建立应用程序和指定设备之间的逻辑连接,根据设备逻辑名找到相应的SP DLL,将应用程序的版本和SP的版本,XFS的MANAGER的版本和SP的版本进行比较,如果匹配则进行连接调用。我国自助设备跨平台已经广泛使用和发展超过17年,XFS标准也从XFS2.0发展到即将发布的XFS3.40,由此可见,如果开发人员根据XFS的版本和SP版本以及中间件的版本进行匹配维护,会产生很大的工作量,开发人员会做大量的重复工作,因此,本申请先获取XFS标准的若干不同版本,并对不同版本进行兼容性封装,生成XFS标准的兼容版本,这样,研发人员只需在中间件的封装研发一次,后续当升级版本后的自助设备接口和与其相应的应用连接时无需再次修改,缩短了研发人员研发时间,提高了产品的研发效率。
为了在跨平台业务中实现不同版本的XFS标准的封装,所述获取XFS标准的若干不同版本包括:
步骤S101、确定所述XFS标准的若干不同版本的版本号;
步骤S102、根据所述版本号,获取所述XFS标准的相应版本。
具体地,每一个软件都有一个版本号,其作用是用户了解所使用的操作系统是否为最新的版本以及它所提供的功能与设施,每一个版本号可以分为主版本号与次版本号两部分。XFS标准至今已有3.0、3.1、3.2、3.3,3.4等多个版本,每个厂商硬件接口封装遵循的标准并不能统一,导致这些中间件对各个厂商的硬件模块的适配有困难,需要多套中间件对应各个版本的标准,为解决现有技术中的问题,本发明实施例首先确定所述XFS标准的若干不同版本的版本号,为后续的统一封装作准备。
为了实现对不同版本的XFS标准的封装,所述对所述不同版本进行兼容性封装,生成XFS标准的兼容版本包括如下步骤:
步骤S111、对所述XFS标准的不同版本进行版本适配,得到适配版本;
步骤S112、将新增功能添加至所述适配版本,生成兼容版本。
实际中,当获取到XFS标准的不同版本后,由于不同版本XFS标准的差异点在于各模块命令参数结构体差异,因此,本发明在获取到这些XFS标准的不同版本后,根据不同版本中模块命令参数结构体的不同,利用版本相关机制,中间件对SP支持的XFS标准的版本范围进行最高版本适配,生成兼容版本,与对应版本的应用平台完美适配,保证数据交互正常,且尽可能支持高版本XFS标准的新增功能。
为了实现准确的版本适配,所述对所述XFS标准不同版本进行版本适配,得到适配版本包括如下步骤:
步骤S1111、根据版本协商方法,将所述XFS标准不同版本分配不同内存空间;
步骤S1112、根据所述XFS标准不同版本生成相对应的字段,并将所述XFS标准不同版本和所述字段存储在所述内存空间,生成适配版本。
例如,本发明实施例的中间件在打开设备连接时,根据版本协商方法,将所述XFS标准不同版本分配不同内存空间,也即,根据版本协商结果选择版本配套的内存分配方案,根据所述XFS标准的不同版本生成相对应的字段,然后将XFS标准不同版本和所述字段存储在所述内存空间,根据所述XFS标准的不同版本,选择与适配版本相对应的内存解析及分配方案,在上层应用与设备模拟器建立连接时会进行版本协商,最终确定应用和模拟器都支持的最高XFS版本,得到适配版本;对上层传入的命令参数结构体按照对应版本的结构体进行解析处理后,将新增功能添加到所述适配版本,解析是将上层应用传入模拟器以支持命令所需的参数,按照协商确定XFS版本中确定的该命令的参数结构描述,然后对其进行解析,获取执行该命令所需的所有参数值,并执行命令。将返回结果按照对应版本的结构体分配内存,赋值输出参数,输出参数是XFS标准中定义的命令执行结果,不同版本同一命令的输出参数描述可能不一致,需要根据协商确认的版本中该命令输出参数的描述对实际输出参数进行组织并赋值,通过指针返回给上层。这样,中间件与SP封装的XFS标准版本一致,不会出现数据交互异常或高版本XFS标准新增功能无法使用的问题。
本发明实施例除了统一XFS标准不同版本的接口,还对其他接口也进行了封装,具体如图1所示,,所述方法包括如下步骤:
步骤S200、获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
实际中,XFS标准仅对国际上通用的部分金融外设提供统一封装接口规范,对于一些我国特有的设备,如二代证读卡器,包含我国加密算法的密码键盘或一些暂未纳入标准的模块如指纹仪、手写板等,导致应用提供商需要单独开发应用来对接这些未纳入XFS标准的接口。本发明实施例为了减少应用改造量,减少改造周期,故获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件。
为了实现我国对于金融行业自主安全可控的要求,所述获取不同系统下所述兼容版本的第一接口包括如下步骤:
步骤S201、获取LINUX系统下所述兼容版本的第一接口;
步骤S202、获取WINDOWS系统下所述兼容版本的第一接口。
具体地,由于目前国际上主流的中间件全都基于XFS标准开发,但XFS标准是基于WINDOWS系统提出的,所以这些中间件也仅适用于WINDOWS系统,应用迫切需要能够运行在LINUX等开源系统平台上,同时需要配套的中间件来支持运行在LINUX系统的应用,在实际硬件SP完全支持LINUX的XFS标准封装前,基于XFS标准的应用如果提前在LINUX系统上开发完善,可以使基于LINUX系统的自助设备,应用、中间件及SP实现并行开发,可以加快项目进展。故而,本发明实施例既要获取LINUX系统下所述兼容版本的第一接口,又要获取WINDOWS系统下所述兼容版本的第一接口。
为了使中间件的封装接口更加完善,所述获取未纳入XFS标准的第二接口包括如下步骤:
步骤S211、确定所述未纳入XFS标准的第二接口的版本号;
步骤S212、根据所述未纳入XFS标准的第二接口的版本号,获取所述未纳入XFS标准的第二接口的版本。
实际中,未纳入XFS标准的第二接口也会根据功能的添加和升级产生不同版本的接口,因此,本发明先确定所述未纳入XFS标准的第二接口的版本号;根据所述未纳入XFS标准的第二接口的版本号,获取所述未纳入XFS标准的第二接口的版本,同样的,根据版本协商原则,中间件封装时进行最高版本适配,使得数据交互正常,本发明实施例中间件接口通过配置参数的方式决定应用调用时,中间件调用相应厂商的硬件接口。
为了实现完整的接口封装,所述对所述第一接口和所述第二接口进行统一封装包括如下步骤:
步骤S221、将所述LINUX系统下所述兼容版本的第一接口的地址总线,WINDOWS系统下所述兼容版本的第一接口的地址总线和所述第二接口的地址总线进行统一封装;
步骤S222、将所述LINUX系统下所述兼容版本的第一接口的数据总线,WINDOWS系统下所述兼容版本的第一接口的数据总线和所述第二接口的数据总线进行统一封装。
实际中,接口分为两部分,地址总线和数据总线,因此在将接口进行封装时,需要将所述LINUX系统下所述兼容版本的第一接口的地址总线,WINDOWS系统下所述兼容版本的第一接口的地址总线和所述第二接口的地址总线进行统一封装;同时需要将所述LINUX系统下所述兼容版本的第一接口的数据总线,WINDOWS系统下所述兼容版本的第一接口的数据总线和所述第二接口的数据总线进行统一封装。为了提高代码的重用性和版本的可维护性,中间件软件采用同一套代码不同的编译配置对WINDOWS和LINUX系统进行支持,在WINDOWS下使用Mircosoft Visual Stadio编译生成.node及.dll文件,在LINUX下使用QTCreator编译生成.node及.so文件,其中.node文件提供统一的业务接口,属性,事件通知,.dll及.so文件通过对各个硬件模块的WINDOWS或LINUX系统下,XFS标准统一接口封装实现具体的硬件动作操作、数据交互或调用一些系统级的API实现具体的文件操作或系统资源控制等基础功能。
在一种实施方式中,如图1所示,所述方法包括如下步骤:
步骤S300、将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
具体地,上述统一封装成功后的中间件接口,其跨平台应用按照整体业务逻辑指定的方式通过JSON-RPC调用.node暴露的不同粒度的基础业务统一接口,自动操作自助设备的硬件模块,通过属性查询确认设备的状态,通过事件接收业务完成情况及结果,还可以达到应用无需了解未纳入XFS标准的硬件模块的底层细节,与调用其他标准硬件模块一样只需关注业务逻辑,最后,根据版本协商结果选择版本配套的内存分配方案,可对用于交互的各个字段值分配对应内存空间,可精准读、写XFS协商结果版本中各个相应字段,从而实现对各个XFS标准版本封装的设备提供商完美适配。中间件接口与自助设备以及应用的接口进行连接后,加载所述中间件,以使所述中间件支持跨平台业务,使中间件能协助应用对自助设备的调试和使用。
所述将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务:
步骤S301、将所述中间件接口的地址总线与自助设备的接口的地址总线连接,并将所述中间件接口的地址总线与所述应用的接口地址总线连接;
步骤S302、将所述中间件接口的数据总线与自助设备的接口的数据总线连接,并将所述中间件接口的数据总线与所述应用的接口数据总线连接;
步骤S303、程序运行后,加载所述中间件,实现对跨平台业务的支持。
具体地,将接口的地址总线和数据总线进行分开封装,将所述中间件接口的地址总线与自助设备的接口的地址总线连接,并将所述中间件接口的地址总线与所述应用的接口地址总线连接;实现对中间件,应用和自助设备的地址总线的封装。将所述中间件接口的数据总线与自助设备的接口的数据总线连接,并将所述中间件接口的数据总线与所述应用的接口数据总线连接;实现对中间件,应用和自助设备的数据总线的封装。封装结束后,当金融机构运行所述自助设备时,会加载所述中间件,同时将所述自助设备的应用也加载进来,这样,所述中间件就可以实现对跨平台业务的支持,即既支持Windows系统和Linux系统,同时实现对不同接口的兼容。
示例性设备
如图2中所示,本发明实施例提供一种支持跨平台业务的中间件实现装置,该装置包括:XFS标准的若干不同版本的获取单元211,中间件生成单元212,连接单元213;XFS标准的若干不同版本的获取单元211,用于获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
中间件生成单元212,用于获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
连接单元213,用于将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
基于上述实施例,本发明还提供了一种智能终端,其原理框图可以如图3所示。该智能终端包括通过系统总线连接的处理器、存储器、网络接口、显示屏、温度传感器。其中,该智能终端的处理器用于提供计算和控制能力。该智能终端的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该智能终端的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种支持跨平台业务的中间件实现方法。该智能终端的显示屏可以是液晶显示屏或者电子墨水显示屏,该智能终端的温度传感器是预先在智能终端内部设置,用于检测内部设备的运行温度。
本领域技术人员可以理解,图3中的原理图,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的智能终端的限定,具体的智能终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种智能终端,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于进行以下操作的指令:
获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本发明所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
综上所述,本发明公开了支持跨平台业务的中间件实现方法、智能终端、存储介质,所述方法包括:获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;将所述中间件接口与自助设备以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。本发明实施例中的中间件支持Windows系统和Linux系统的跨平台业务,同时支持XFS标准的若干不同版本,还支持未纳入XFS标准的其他接口,屏蔽所有硬件及系统层面的差异,解决各种硬件和软件接口差异的问题,实现应用业务的快速开发和修改,提高产品的使用灵活性,增加产品适应面的广度。
应当理解的是,本发明公开了一种支持跨平台业务的中间件实现方法、智能终端、存储介质,应当理解的是,本发明的应用不限于上述的举例,实际中,实现中间件业务接口的方式、兼容不同版本XFS标准的方式及统一不同厂商非标硬件类似接口功能的方式存在多种变形方案。对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。
Claims (10)
1.一种支持跨平台业务的中间件实现方法,其特征在于,所述方法包括:
获取XFS标准的若干不同版本,并对所述不同版本进行兼容性封装,生成XFS标准的兼容版本;
获取不同系统下所述兼容版本的第一接口和未纳入XFS标准的第二接口,并对所述第一接口和所述第二接口进行统一封装,生成中间件;
将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务。
2.根据权利要求1所述的支持跨平台业务的中间件实现方法,其特征在于,所述获取XFS标准的若干不同版本包括:
确定所述XFS标准的若干不同版本的版本号;
根据所述版本号,获取所述XFS标准的相应版本。
3.根据权利要求1所述的支持跨平台业务的中间件实现方法,其特征在于,所述对所述不同版本进行兼容性封装,生成XFS标准的兼容版本包括:
对所述XFS标准的不同版本进行版本适配,得到适配版本;
将新增功能添加至所述适配版本,生成兼容版本。
4.根据权利要求3所述的支持跨平台业务的中间件实现方法,其特征在于,所述对所述XFS标准不同版本进行版本适配,得到适配版本包括:
根据版本协商方法,将所述XFS标准不同版本分配不同内存空间;
根据所述XFS标准不同版本生成相对应的字段,并将所述XFS标准不同版本和所述字段存储在所述内存空间,生成适配版本。
5.根据权利要求1所述的支持跨平台业务的中间件实现方法,其特征在于,所述获取不同系统下所述兼容版本的第一接口包括:
获取LINUX系统下所述兼容版本的第一接口;
获取WINDOWS系统下所述兼容版本的第一接口。
6.根据权利要求5所述的支持跨平台业务的中间件实现方法,其特征在于,所述获取未纳入XFS标准的第二接口包括:
确定所述未纳入XFS标准的第二接口的版本号;
根据所述未纳入XFS标准的第二接口的版本号,获取所述未纳入XFS标准的第二接口的版本。
7.根据权利要求6所述的支持跨平台业务的中间件实现方法,其特征在于,所述对所述第一接口和所述第二接口进行统一封装包括:
将所述LINUX系统下所述兼容版本的第一接口的地址总线,WINDOWS系统下所述兼容版本的第一接口的地址总线和所述第二接口的地址总线进行统一封装;
将所述LINUX系统下所述兼容版本的第一接口的数据总线,WINDOWS系统下所述兼容版本的第一接口的数据总线和所述第二接口的数据总线进行统一封装。
8.根据权利要求1所述的支持跨平台业务的中间件实现方法,其特征在于,所述将所述中间件接口与自助设备的接口以及应用的接口进行连接,加载所述中间件,以使所述中间件支持跨平台业务:
将所述中间件接口的地址总线与自助设备的接口的地址总线连接,并将所述中间件接口的地址总线与所述应用的接口地址总线连接;
将所述中间件接口的数据总线与自助设备的接口的数据总线连接,并将所述中间件接口的数据总线与所述应用的接口数据总线连接;
程序运行后,加载所述中间件,实现对跨平台业务的支持。
9.一种智能终端,其特征在于,包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行所述一个或者一个以上程序包含用于执行如权利要求1-8中任意一项所述的方法。
10.一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1-8中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010898493.0A CN112114980B (zh) | 2020-08-31 | 2020-08-31 | 支持跨平台业务的中间件实现方法、智能终端、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010898493.0A CN112114980B (zh) | 2020-08-31 | 2020-08-31 | 支持跨平台业务的中间件实现方法、智能终端、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112114980A true CN112114980A (zh) | 2020-12-22 |
CN112114980B CN112114980B (zh) | 2024-03-29 |
Family
ID=73805640
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010898493.0A Active CN112114980B (zh) | 2020-08-31 | 2020-08-31 | 支持跨平台业务的中间件实现方法、智能终端、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112114980B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778512A (zh) * | 2021-09-14 | 2021-12-10 | 中国联合网络通信集团有限公司 | 谈判数据处理方法及设备 |
CN113821271A (zh) * | 2021-09-15 | 2021-12-21 | 上海得帆信息技术有限公司 | 一种业务应用集成平台的连接器扩展方法和系统 |
CN115167886A (zh) * | 2022-09-05 | 2022-10-11 | 塬数科技(无锡)有限公司 | 一种自动适配方法、装置、存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001090850A2 (en) * | 2000-05-25 | 2001-11-29 | Diebold, Incorporated | Automated transaction machine system and method |
CN104102490A (zh) * | 2014-07-28 | 2014-10-15 | 梓昆科技(中国)股份有限公司 | 一种基于Windows服务实现CEN/XFS SP的方法 |
CN106250126A (zh) * | 2016-07-26 | 2016-12-21 | 武汉深之度科技有限公司 | 一种Linux系统下的XFS实现系统及方法 |
-
2020
- 2020-08-31 CN CN202010898493.0A patent/CN112114980B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001090850A2 (en) * | 2000-05-25 | 2001-11-29 | Diebold, Incorporated | Automated transaction machine system and method |
CN104102490A (zh) * | 2014-07-28 | 2014-10-15 | 梓昆科技(中国)股份有限公司 | 一种基于Windows服务实现CEN/XFS SP的方法 |
CN106250126A (zh) * | 2016-07-26 | 2016-12-21 | 武汉深之度科技有限公司 | 一种Linux系统下的XFS实现系统及方法 |
Non-Patent Citations (3)
Title |
---|
王洪元;孙小庆;李继奎;: "CEN/XFS在柜面存取款一体机中的应用", 常州大学学报(自然科学版), no. 03 * |
苏正荣;: "浅谈Linux跨平台可行性", 中国金融电脑, no. 05 * |
魏华;: "CEN/XFS标准充分支持厂商特性", 中国金融电脑, no. 12 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778512A (zh) * | 2021-09-14 | 2021-12-10 | 中国联合网络通信集团有限公司 | 谈判数据处理方法及设备 |
CN113778512B (zh) * | 2021-09-14 | 2023-07-11 | 中国联合网络通信集团有限公司 | 谈判数据处理方法及设备 |
CN113821271A (zh) * | 2021-09-15 | 2021-12-21 | 上海得帆信息技术有限公司 | 一种业务应用集成平台的连接器扩展方法和系统 |
CN115167886A (zh) * | 2022-09-05 | 2022-10-11 | 塬数科技(无锡)有限公司 | 一种自动适配方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112114980B (zh) | 2024-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112114980B (zh) | 支持跨平台业务的中间件实现方法、智能终端、存储介质 | |
WO2020006910A1 (zh) | 业务组件式开发方法、装置、计算机设备及存储介质 | |
CN105022630B (zh) | 一种组件管理系统及组件管理方法 | |
CN111367510B (zh) | 一种安卓功能模块开发的方法及装置 | |
US20180239621A1 (en) | Method and device of operating functional module cross platforms | |
CN105278996A (zh) | 一种日志采集方法、装置及日志服务系统 | |
US20030177472A1 (en) | Method and apparatus for deployment of high integrity software using reduced dynamic memory allocation | |
WO2018032653A1 (zh) | 一种Java卡应用的功能实现方法及装置 | |
EP2626784A1 (en) | Method and apparatus for automated MATLAB interfacing | |
CN110221840B (zh) | 应用程序的功能实现方法及装置、设备及存储介质 | |
CN114895935A (zh) | 刷写车辆ecu的方法、装置、电子设备及存储介质 | |
WO2023208012A1 (zh) | 程序处理、运行方法、装置、终端、智能卡及存储介质 | |
CN110806891B (zh) | 嵌入式设备软件版本的生成方法及装置 | |
EP1535150B1 (en) | Method and apparatus for deployment of high integrity software using initialization order and calling order constraints | |
CN116755677A (zh) | 原子服务编排方法、装置、设备及存储介质 | |
CN108628620B (zh) | Pos应用开发的实现方法、装置、计算机设备和存储介质 | |
CN110333870B (zh) | Simulink模型变量分配的处理方法、装置及设备 | |
CN115114610B (zh) | 一种基于安卓系统通过Root调用服务的模块及方法 | |
CN112379911B (zh) | 固件模块注册信息处理方法、系统、存储介质、智能手机 | |
CN111367586B (zh) | 一种plm系统客户端及其工作方法 | |
US20240020133A1 (en) | Systems and methods to bridge platforms | |
CN113626506B (zh) | 基于异构平台的数据处理方法、装置和电子设备 | |
CN117056317B (zh) | 数据处理方法、装置、设备及计算机可读存储介质 | |
CN111506301B (zh) | 绕过系统限制反射调用的方法及相关设备 | |
CN113190263B (zh) | 一种集成第三方sdk的方法及装置 |
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 |