CN112954075A - 一种业务功能实现方法、***、对应装置及存储介质 - Google Patents
一种业务功能实现方法、***、对应装置及存储介质 Download PDFInfo
- Publication number
- CN112954075A CN112954075A CN202110336635.9A CN202110336635A CN112954075A CN 112954075 A CN112954075 A CN 112954075A CN 202110336635 A CN202110336635 A CN 202110336635A CN 112954075 A CN112954075 A CN 112954075A
- Authority
- CN
- China
- Prior art keywords
- service
- script
- module
- function component
- request
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/38—Creation or generation of source code for implementing user interfaces
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本公开提供一种业务功能实现方法、***、浏览器客户端、银行服务器及存储介质,所述浏览器客户端包括:第一业务脚本编译模块,用于将源代码形式的第一业务功能组件编译成目标代码形式的第二业务功能组件;第一业务脚本运行模块,用于运行第二业务功能组件,从而执行业务处理;第一渲染展示模块,用于对业务信息进行展示。本方案基于富客户端的虚拟机技术,能够屏蔽业务功能组件与操作***版本的相关性,而且,在浏览器客户端中的用户功能发生迭代变化时,不需要客户的操作确认即可完成这种功能的迭代变化。
Description
技术领域
本公开涉及计算机技术领域,尤其涉及一种业务功能实现方法、***、对应装置及存储介质。
背景技术
随着通信与互联网技术的进步,为了方便客户的业务办理,许多银行以智能手机为载体,为用户推出了银行金融服务客户端,使得客户能够在个人智能手机上通过银行金融服务客户端来办理金融业务。但是,随着业务功能不断更新与完善,客户使用频度不断提高,应用场景、范围不断扩大,这种通过客户端APP为用户提供银行金融服务的方式仍存在以下问题:
1、平台相关性:现有银行金融服务客户端运行于各类操作***上,需基于特定操作***研发、维护不同的版本,如常见的IOS、Android、Windows和国产操作***上;
2、迭代复杂性:现有银行金融服务客户端中功能的迭代变化,需通过用户操作客户端进行确认才能完成版本升级和更新;
3、功能同质性:现有银行金融服务客户端为所有用户提供统一的业务功能模块,无法根据用户特性进行个性化、差异化的业务功能展示。
发明内容
为了至少部分地解决背景技术中提出的问题,本公开实施例提供一种业务功能实现方法、***、对应装置及存储介质。所述技术方案如下:
根据本公开实施例的第一方面,提供一种浏览器客户端,所述浏览器客户端包括:第一业务脚本编译模块、第一业务脚本运行模块和第一渲染展示模块;其中,
所述第一业务脚本编译模块,用于从银行服务端接收源代码形式的第一业务功能组件,并将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;
所述业务脚本运行模块,用于运行所述第一业务脚本编译模块编码好的第二业务功能组件,从而执行业务处理;
所述第一渲染展示模块,用于对所述第一业务脚本运行模块在执行业务处理时所生成的业务信息进行展示。
进一步地,所述第一渲染展示模块,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第一业务脚本运行模块;
所述第一业务脚本运行模块,用于在所述第一业务脚本编译模块从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
进一步地,所述第一业务脚本运行模块,用于通过以下方式执行业务处理:
所述第一业务脚本运行模块接收第一渲染展示模块发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则从本地调用相应的第二业务功能组件执行所述业务请求;或者,向银行服务端请求新的第一业务功能组件,并在所述第一业务脚本编译模块将所述新的第一业务功能组件编译成新的第二业务功能组件之后,通过运行所述新的第二业务功能组件来执行所述业务请求;如果是业务数据请求则向银行服务端请求相应的业务数据。
根据本公开实施例的第二方面,提供一种银行服务端,所述银行服务端包括:第一业务功能脚本库和第一业务逻辑处理模块;其中,
所述第一业务功能脚本库,用于存储源代码形式的第一业务功能组件,以及用于应浏览器客户端的业务功能组件请求,向浏览器客户端提供所述浏览器客户端所请求的第一业务功能组件;
所述第一业务逻辑处理模块,用于应浏览器客户端的业务数据请求执行业务逻辑处理,从而向所述浏览器客户端返回业务数据。
根据本公开实施例第三方面,提供了一种业务功能实现***,所述***包括上述第一方面任一项所述的浏览器客户端和上述第二方面所述的银行服务端。
根据本公开实施例的第四方面,提供了一种浏览器客户端,所述浏览器客户端包括:脚本调度器、第二业务脚本编译模块、第二业务脚本运行模块和第二渲染展示模块;其中,
所述脚本调度器,用于在从银行服务端接收到源代码形式的第一业务功能功能组件时,调用第二业务脚本编译模块将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;还用于在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,向所述第二业务脚本运行模块返回相应的第二业务功能组件;
所述第二业务脚本编译模块,用于将第一业务功能组件编译成第二业务功能组件;
所述第二业务脚本运行模块,用于运行所述脚本调度器返回的第二业务功能组件,从而执行业务处理;
所述第二渲染展示模块,用于对执行业务处理时所生成的业务信息进行展示。
进一步地,所述第二渲染展示模块,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第二业务脚本运行模块;
所述第二业务脚本运行模块,用于在所述脚本调度器从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
进一步地,所述第二业务脚本运行模块,用于通过以下方式执行业务处理:
所述第二业务脚本运行模块接收所述第二渲染展示模块发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则将所述业务功能组件请求发送给脚本调度器;如果是业务数据请求则向银行服务端请求相应的业务数据;
所述脚本调度器,还用于在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,从本地的第二业务功能组件中,查找到相应的第二业务功能组件,并将查找到的第二业务功能组件返回给所述第二业务脚本运行模块;或者,向银行服务端请求新的第一业务功能组件,并在所述第二业务脚本编译模块将所述新的第一业务功能组件编译成新的第二业务功能组件之后,将所述新的第二业务功能组件返回给所述第二业务脚本运行模块。
根据本公开实施例的第五方面,提供了一种银行服务端,所述银行服务端包括:响应调度器、第二业务功能脚本库和第二业务逻辑处理模块;其中,
所述响应调度器,用于根据浏览器客户端的业务请求调用第二业务功能脚本库或者第二业务逻辑处理模块;
所述第二业务功能脚本库,用于存储目标代码形式的第一业务功能组件,以及用于被第二响应调度器调用时,向浏览器客户端提供相应的第一业务功能组件;
所述第二业务逻辑处理模块,用于被响应调度器调用时,执行业务逻辑处理。
进一步地,所述响应调度器具体用于接收浏览器客户端发送的业务数据请求,并将所接收到的业务数据请求发送给第二业务逻辑处理模块;
所述第二业务逻辑处理模块,用于在接收到业务数据请求时,执行业务逻辑处理,生成业务数据,并向所述浏览器客户端返回所生成的业务数据。
进一步地,所述响应调度器具体用于在接收到浏览器客户端发送的业务功能组件请求时,调用业务功能脚本库向所述浏览器客户端返回相应的第一业务功能组件。
根据本公开的第六方面,提供了一种业务功能实现***,所述***包括上述第四方面所述的浏览器客户端和上述第五方面所述的银行服务端。
根据本公开实施例的第七方面,提供了一种业务功能实现方法,所述方法应用于浏览器客户端,所述浏览器客户端包括:第一业务脚本编译模块、第一业务脚本运行模块和第一渲染展示模块,所述方法包括:
所述第一业务脚本编译模块从银行服务端接收源代码形式的第一业务功能组件,并将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;
所述第一业务脚本运行模块运行所述业务脚本编译模块编码好的第二业务功能组件,从而执行业务处理;
所述第一渲染展示模块对所述业务脚本运行模块在执行业务处理时所生成的业务信息进行展示。
根据本公开实施例的第八方面,提供了一种业务功能实现方法,所述方法应用于银行服务端,所述银行服务端包括:第一业务功能脚本库和第一业务逻辑处理模块,所述方法包括:
第一业务功能脚本库应浏览器客户端的业务功能组件请求,向浏览器客户端提供所述浏览器客户端所请求的第一业务功能组件;
第一业务逻辑处理模块应浏览器客户端的业务数据请求执行业务逻辑处理,从而向所述浏览器客户端返回业务数据。
根据本公开的第九方面,提供了一种业务功能实现方法,所述方法应用于浏览器客户端,所述浏览器客户端包括:脚本调度器、第二业务脚本编译模块、第二业务脚本运行模块和第二渲染展示模块,所述方法包括:
脚本调度器在从银行服务端接收到源代码形式的第一业务功能功能组件时,调用第二业务脚本编译模块将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;同时,在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,向所述第二业务脚本运行模块返回相应的第二业务功能组件;
第二业务脚本运行模块运行所述脚本调度器返回的第二业务功能组件,从而执行业务处理;
所述第二渲染展示模块对执行业务处理时所生成的业务信息进行展示。
根据本公开实施例的第十方面,提供了一种业务功能实现方法,所述方法应用于银行服务端,所述银行服务端包括:响应调度器、第二业务功能脚本库和第二业务逻辑处理模块,所述方法包括:
所述响应调度器根据浏览器客户端的业务请求调用第二业务功能脚本库或者第二业务逻辑处理模块;
所述第二业务功能脚本库在被响应调度器调用时,向浏览器客户端提供相应的第一业务功能组件;
所述第二业务逻辑处理模块在被响应调度器调用时,执行业务逻辑处理。
根据本公开实施例的第十一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现本公开实施例第七方面至第十方面中任一项所述的业务功能实现方法中所执行的步骤。
本公开实施例提供了一种浏览器客户端,包括:第一业务脚本编译模块,用于将源代码形式的第一业务功能组件编译成目标代码形式的第二业务功能组件;第一业务脚本运行模块,用于运行第二业务功能组件,从而执行业务处理;第一渲染展示模块,用于对业务信息进行展示。本方案基于富客户端的虚拟机技术,能够屏蔽业务功能组件与操作***版本的相关性,而且,在浏览器客户端中的用户功能发生迭代变化时,不需要客户的操作确认即可完成这种功能的迭代变化。基于该浏览器客户端至少可以达到以下有益效果:
1)使用基于富客户端(RCP)的虚拟机技术,屏蔽业务功能组件与操作***版本的相关性,使得编译后的业务功能组件只需生成在相应虚拟机上可运行的目标代码,即可不加修改地运行于多种操作***平台。
2)在浏览器客户端中的用户功能发生迭代变化时,不需要客户的操作确认即可完成这种功能的迭代变化,实现客户端的升级和更新。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种浏览器客户端的结构示意图;
图2是本公开实施例提供的一种银行服务端的结构示意图;
图3是本公开实施例提供的一种业务功能实现***的结构示意图;
图4是本公开实施例提供的另一种浏览器客户端的结构示意图;
图5是本公开实施例提供的另一种银行服务端的结构示意图;
图6是本公开实施例提供的另一种业务功能实现***的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的***和方法的例子。
实施例一
本公开实施例一提供了一种浏览器客户端,参照图1,所述浏览器客户端包括:第一业务脚本编译模块11、第一业务脚本运行模块12和第一渲染展示模块13;其中,
所述第一业务脚本编译模块11,用于从银行服务端接收源代码形式的第一业务功能组件,并将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;
所述第一业务脚本运行模块12,用于运行所述第一业务脚本编译模块编码好的第二业务功能组件,从而执行业务处理;
所述第一渲染展示模块,用于对所述第一业务脚本运行模块12在执行业务处理时所生成的业务信息进行展示。
进一步地,所述第一渲染展示模块13,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第一业务脚本运行模块12;
所述第一业务脚本运行模块12,用于在所述第一业务脚本编译模块11从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
进一步地,所述第一业务脚本运行模块12,用于通过以下方式执行业务处理:
所述第一业务脚本运行模块12接收第一渲染展示模块13发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则从本地调用相应的第二业务功能组件执行所述业务请求;或者,向银行服务端请求新的第一业务功能组件,并在所述第一业务脚本编译模块11将所述新的第一业务功能组件编译成新的第二业务功能组件之后,通过运行所述新的第二业务功能组件来执行所述业务请求;如果是业务数据请求则向银行服务端请求相应的业务数据。
实施例二
本公开实施例二提供了一种银行服务端,参照图2,所述银行服务端包括:第一业务功能脚本库21和第一业务逻辑处理模块22;其中,
所述第一业务功能脚本库21,用于存储源代码形式的第一业务功能组件,以及用于应浏览器客户端的业务功能组件请求,向浏览器客户端提供所述浏览器客户端所请求的第一业务功能组件;
所述第一业务逻辑处理模块22,用于应浏览器客户端的业务数据请求执行业务逻辑处理,从而向所述浏览器客户端返回业务数据。
优选的,所述第一业务功能脚本库21在对第一业务功能组件进行存储时,同一功能的第一业务功能组件可以提供各种不同的版本,不同版本在内容的展示风格、展示内容上有所差别,这样,当第一业务功能脚本库21向浏览器客户端提供其所请的第一业务功能组件时,可以根据当前发起请求的用户的信息(比如,年龄、性别、行业、岗位等)来在本地筛选出与当前用户匹配的第一业务功能组件,从而实现用户业务功能的个性化展示。
实施例三
本公开实施例三提供了一种业务功能实现***,所述***包括上述实施例一所述的浏览器客户端和上述实施例二所述的银行服务端。
本公开实施例三所提供的业务功能实现***,至少可以达到以下有益效果:
1)使用基于富客户端(RCP)虚拟机技术,屏蔽了业务功能组件与操作***版本的相关性,使得编译后的业务功能组件只需生成在相应虚拟机上可运行的目标代码,即可不加修改地运行于多种操作***平台。
2)在浏览器客户端中的用户功能发生迭代变化时,不需要客户的操作确认即可完成这种功能的迭代变化,实现客户端的升级和更新。
3)通过动态获取业务功能模块以及基于用户信息的业务功能模块个性化推送,能够实现业务场景千人千面的个性化定制。
示例一
下面通过一个具体示例,对本发明的一种实施例一至实施例三所述方案做以下详细说明。
图3是本发明所提供的业务实现***的一种示例性基本结构图,参照图3,本***包括:浏览器客户端和银行服务端;其中,
浏览器客户端包括:第一业务脚本编译模块、第一业务运行模块和第一渲染展示模块;其中,
第一业务脚本编译模块使用编译器技术将源代码(汇编或高级语言源程序)翻译为目标代码(机器语言),比如,将脚本指令集转换成CPU可识别的二进制代码,例如使用Java编译器Sun公司的JDK,将Java源代码转换成Java源代码。
第一业务脚本运行模块使用虚拟机技术,屏蔽了具体操作***平台相关的信息,使得编译后的程序只需生成在例如虚拟机上运行的目标代码,即,编译后的程序可不加修改地运行在多种平台。如,JVM(Java虚拟机)就是一种基于Java语言的虚拟机技术,通过软件在实际的计算机上仿真模拟各种计算机功能,具有完善的架构,如处理器、堆栈、寄存器等,还具有相应的指令***。
第一渲染展示模块,依赖现有浏览器技术,实现信息资源的展示呈现,用户的交互以及后台服务端的信息交互。如,Google浏览器包含了展示UI框架,负责的浏览器引擎、负责解释渲染页面的渲染引擎负责实现页面动态效果的JS引擎以及信息传递协议。
银行服务端包括:第一业务功能脚本库和第一业务逻辑处理模块;其中,
第一业务功能脚本库用于存储不同业务功能组件,办公负责业务功能模块化;不同业务功能组件用于在不同业务场景(比如,登录、查询余额、转账等)中为用户提供不同的功能,所有业务功能组件以模块化的方式进行存储;
第一业务逻辑处理模块为现有业务处理,对用户的信息数据进行逻辑运算与处理,将结果返回给浏览器客户端。
参照图3,本示例中的业务实现流程如下:
S11、浏览器客户端启动后,用户通过第一渲染展示模块与浏览器客户端进行交互,具体的交互例如,用户向第一渲染展示模块发送业务请求;
S12、第一渲染展示模块将接收到的业务请求发送给第一业务脚本运行模块;
S13、第一业务脚本运行模块判断接收到的业务请求是业务功能组件请求还是业务数据请求;如果是业务数据请求,则直接根据该业务数据请求向银行服务端中的第一业务逻辑处理模块请求相应的业务数据,然后,接收第一业务逻辑处理模块返回的业务数据,并通过第一渲染展示模块对接收到的业务数据进行展示;如果是业务功能组件请求,则判断本地是否存在用户请求的业务功能组件,如果存在,则直接从本地调用相应的业务功能组件来执行用户的业务功能组件请求;如果不存在,则向银行服务端中的第一业务功能脚本库发起对相应业务功能组件的请求,该第一业务功能脚本库接收到所述业务功能组件请求之后,则将相应的业务功能组件(源代码形式)返回给浏览器客户端中的第一业务脚本编译模块,所述第一业务脚本编译模块接收到第一业务功能脚本库发送的业务功能组件的源代码,对所述源代码进行编译得到目标代码,并将编译得到的目标代码交给第一业务脚本运行模块,通过第一业务脚本运行模块运行所述目标代码来执行用户的业务请求。
实施例四
本公开实施例四提供了一种浏览器客户端,参照图4,所述浏览器客户端包括:脚本调度器41、第二业务脚本编译模块42、第二业务脚本运行模块43和第二渲染展示模块44;其中,
所述脚本调度器41,用于在从银行服务端接收到源代码形式的第一业务功能功能组件时,调用第二业务脚本编译模块42将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;还用于在接收到所述第二业务脚本运行模块43发送的业务功能组件请求时,向所述第二业务脚本运行模块43返回相应的第二业务功能组件;
所述第二业务脚本编译模块42,用于将第一业务功能组件编译成第二业务功能组件;
所述第二业务脚本运行模块43,用于运行所述脚本调度器41返回的第二业务功能组件,从而执行业务处理;
所述第二渲染展示模块44,用于对执行业务处理时所生成的业务信息进行展示。
进一步地,所述第二渲染展示模块44,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第二业务脚本运行模块43;
所述第二业务脚本运行模块43,用于在所述脚本调度器41从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
进一步地,所述第二业务脚本运行模块43,用于通过以下方式执行业务处理:
所述第二业务脚本运行模块43接收所述第二渲染展示模块44发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则将所述业务功能组件请求发送给脚本调度器;如果是业务数据请求则向银行服务端请求相应的业务数据;
所述脚本调度器41,还用于在接收到所述第二业务脚本运行模块43发送的业务功能组件请求时,从本地的第二业务功能组件中,查找到相应的第二业务功能组件,并将查找到的第二业务功能组件返回给所述第二业务脚本运行模块43;或者,向银行服务端请求新的第一业务功能组件,并在所述第二业务脚本编译模块42将所述新的第一业务功能组件编译成新的第二业务功能组件之后,将所述新的第二业务功能组件返回给所述第二业务脚本运行模块43。
该实施例中,在浏览器客户端中通过内部总线技术引入了脚本调度器,作为总控模块负责业务功能组件的分发派送。
实施例五
本公开实施例五提供了一种银行服务端,所述银行服务端包括:响应调度器51、第二业务功能脚本库52和第二业务逻辑处理模块53;其中,
所述响应调度器51,用于根据浏览器客户端的业务请求调用第二业务功能脚本库52或者第二业务逻辑处理模块53;
所述第二业务功能脚本库52,用于存储目标代码形式的第一业务功能组件,以及用于被第二响应调度器51调用时,向浏览器客户端提供相应的第一业务功能组件;
所述第二业务逻辑处理模块53,用于被响应调度器51调用时,执行业务逻辑处理。
进一步地,所述响应调度器51具体用于接收浏览器客户端发送的业务数据请求,并将所接收到的业务数据请求发送给第二业务逻辑处理模块53;
所述第二业务逻辑处理模块53,用于在接收到业务数据请求时,执行业务逻辑处理,生成业务数据,并向所述浏览器客户端返回所生成的业务数据。
进一步地,所述响应调度器51具体用于在接收到浏览器客户端发送的业务功能组件请求时,调用业务功能脚本库向所述浏览器客户端返回相应的第一业务功能组件。
本实施例中,在银行服务端中通过内部总线技术引入了响应调度器,作为总控模块负责任务的分发派送,这样当模块结构发生变化(如脚本库的调用方式、业务逻辑组件功能调整、横向扩展)时可以快速接入。总线技术是指基于消息调用服务的通信模块,通过标准适配器和接口如XML,实现不同模块的插拔与调用。
优选的,所述第二业务功能脚本库52在对第一业务功能组件进行存储时,同一功能的第一业务功能组件可以提供各种不同的版本,不同版本在内容的展示风格、展示内容上有所差别,这样,当第二业务功能脚本库52向浏览器客户端提供其所请的第一业务功能组件时,可以根据当前发起请求的用户的信息(比如,年龄、性别、行业、岗位等)来在本地筛选出与当前用户匹配的第一业务功能组件,从而实现用户业务功能的个性化展示。
实施例六
本公开实施例六提供了一种业务功能实现***,所述***包括上述实施例四所述的浏览器客户端和上述实施例五所述的银行服务端。
本***中,由于通过总线技术接入了脚本调度器和响应调度器,当银行服务端或浏览器客户端内部结构调整,比如,业务逻辑横向扩展时,只需调整内部组件接口,而不需要进行浏览器客户端和银行服务端的改造。
本公开实施例六所提供的业务功能实现***,至少可以达到以下有益效果:
1)使用基于富客户端(RCP)虚拟机技术,屏蔽了业务功能组件与操作***版本的相关性,使得编译后的业务功能组件只需生成在相应虚拟机上可运行的目标代码,即可不加修改地运行于多种操作***平台。
2)在浏览器客户端中的用户功能发生迭代变化时,不需要客户的操作确认即可完成这种功能的迭代变化,实现客户端的升级和更新。
3)通过动态获取业务功能模块以及基于用户信息的业务功能模块个性化推送,能够实现业务场景千人千面的个性化定制。
示例二
下面通过一个具体示例,对本发明的实施例四至实施例六所述方案做以下详细说明。
图6是本发明所提供的业务实现***的一种示例性基本结构图,参照图6,本***包括:浏览器客户端和银行服务端;其中,
浏览器客户端包括:脚本调度器、第一业务脚本编译模块、第一业务运行模块和第一渲染展示模块;其中,
脚本调度器,用于接收第二业务功能脚本库发送的业务功能脚本源代码,并将接收到的业务功能脚本源代码发送给第二脚本编译模块进行编译,然后,将编译完成的目标代码交给第二脚本运行模块进行运行;还用于在第二脚本运行模块请求相应的业务功能组件目标代码时,为其提供相应的目标代码。
第二业务脚本编译模块使用编译器技术将源代码(汇编或高级语言源程序)翻译为目标代码(机器语言),比如,将脚本指令集转换成CPU可识别的二进制代码,例如使用Java编译器Sun公司的JDK,将Java源代码转换成Java源代码。
第二业务脚本运行模块使用虚拟机技术,屏蔽了具体操作***平台相关的信息,使得编译后的程序只需生成在例如虚拟机上运行的目标代码,即,编译后的程序可不加修改地运行在多种平台。如,JVM(Java虚拟机)就是一种基于Java语言的虚拟机技术,通过软件在实际的计算机上仿真模拟各种计算机功能,具有完善的架构,如处理器、堆栈、寄存器等,还具有相应的指令***。
第二渲染展示模块,依赖现有浏览器技术,实现信息资源的展示呈现,用户的交互以及后台服务端的信息交互。如,Google浏览器包含了展示UI框架,负责的浏览器引擎、负责解释渲染页面的渲染引擎负责实现页面动态效果的JS引擎以及信息传递协议。
银行服务端包括:响应调度器、第二业务功能脚本库模块和第二业务逻辑处理模块;其中,
第二业务功能脚本库模块用于存储不同业务功能组件,负责业务功能模块化;不同业务功能组件用于在不同业务场景(比如,登录、查询余额、转账等)中为用户提供不同的功能,所有业务功能组件以模块化的方式进行存储;
第二业务逻辑处理模块用于实现现有业务处理,通过与后端数据库的交互,对用户的信息数据进行逻辑运算与处理,将结果返回给浏览器客户端。
参照图6,本示例中的业务实现流程如下:
S11、浏览器客户端启动后,用户通过第一渲染展示模块与浏览器客户端进行交互,具体的交互,例如,用户向第一渲染展示模块发送业务请求;
S12、第一渲染展示模块将接收到的业务请求发送给第一业务脚本运行模块;
S13、第一业务脚本运行模块判断接收到的业务请求是业务功能组件请求还是业务数据请求;如果是业务数据请求,则直接将该业务数据请求发送给银行服务端中的响应调度器;如果是业务功能组件请求,则判断本地是否存在用户请求的业务功能组件,如果存在,则直接从本地调用相应的业务功能组件来执行用户的业务功能组件请求;如果不存在,则将所述业务功能请求发送给银行服务端中的响应调度器;
S14、银行服务端中的响应调度器在接收到浏览器客户端发送的业务请求时,判断所述业务请求是业务数据请求还是业务功能组件请求?
如果是业务数据请求,则调用第二业务逻辑处理模块处理所述业务数据请求,并由第二业务逻辑处理模块将处理得到的业务数据直接返回给第二脚本运行模块或者通过响应调度器返回给第二脚本运行模块;由第二脚本运行模块对所述业务数据进行处理后,将最终业务信息内容交给第二渲染展示模块进行渲染展示;
如果是业务功能组件请求,则调用第二业务功能脚本库向浏览器客户端返回相应的业务功能组件源代码;具体的,第二业务功能脚本库将相应的业务功能组件(源代码形式)返回给浏览器客户端中的脚本调度器,由脚本调度器将该源代码交给第一业务脚本编译模块,第一业务脚本编译模块接收到第一业务功能脚本库发送的业务功能组件的源代码后,对所述源代码进行编译得到目标代码,并将编译得到的目标代码交给第一业务脚本运行模块,通过第一业务脚本运行模块运行所述目标代码来执行用户的业务请求。
实施例七
本公开实施例七提供了一种计算机可读的存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有至少一条计算机指令,该指令被处理器执行时实现本发明实施例七至实施例十所描述的业务功能实现方法,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (17)
1.一种浏览器客户端,其特征在于,所述浏览器客户端包括:第一业务脚本编译模块、第一业务脚本运行模块和第一渲染展示模块;其中,
所述第一业务脚本编译模块,用于从银行服务端接收源代码形式的第一业务功能组件,并将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;
所述第一业务脚本运行模块,用于运行所述第一业务脚本编译模块编码好的第二业务功能组件,从而执行业务处理;
所述第一渲染展示模块,用于对所述第一业务脚本运行模块在执行业务处理时所生成的业务信息进行展示。
2.根据权利要求1所述的浏览器客户端,其特征在于,所述第一渲染展示模块,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第一业务脚本运行模块;
所述第一业务脚本运行模块,用于在所述第一业务脚本编译模块从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
3.根据权利要求2所述的浏览器客户端,其特征在于,所述第一业务脚本运行模块,用于通过以下方式执行业务处理:
所述第一业务脚本运行模块接收第一渲染展示模块发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则从本地调用相应的第二业务功能组件执行所述业务请求;或者,向银行服务端请求新的第一业务功能组件,并在所述第一业务脚本编译模块将所述新的第一业务功能组件编译成新的第二业务功能组件之后,通过运行所述新的第二业务功能组件来执行所述业务请求;如果是业务数据请求则向银行服务端请求相应的业务数据。
4.一种银行服务端,其特征在于,所述银行服务端包括:第一业务功能脚本库和第一业务逻辑处理模块;其中,
所述第一业务功能脚本库,用于存储源代码形式的第一业务功能组件,以及用于应浏览器客户端的业务功能组件请求,向浏览器客户端提供所述浏览器客户端所请求的第一业务功能组件;
所述第一业务逻辑处理模块,用于应浏览器客户端的业务数据请求执行业务逻辑处理,从而向所述浏览器客户端返回业务数据。
5.一种业务功能实现***,其特征在于,所述***包括权利要求1-3其中任一项所述的浏览器客户端和权利要求4所述的银行服务端。
6.一种浏览器客户端,其特征在于,所述浏览器客户端包括:脚本调度器、第二业务脚本编译模块、第二业务脚本运行模块和第二渲染展示模块;其中,
所述脚本调度器,用于在从银行服务端接收到源代码形式的第一业务功能功能组件时,调用第二业务脚本编译模块将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;还用于在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,向所述第二业务脚本运行模块返回相应的第二业务功能组件;
所述第二业务脚本编译模块,用于将第一业务功能组件编译成第二业务功能组件;
所述第二业务脚本运行模块,用于运行所述脚本调度器返回的第二业务功能组件,从而执行业务处理;
所述第二渲染展示模块,用于对执行业务处理时所生成的业务信息进行展示。
7.根据权利要求6所述的浏览器客户端,其特征在于,所述第二渲染展示模块,还用于接收用户发送的业务请求,并将接收到的业务请求发送给第二业务脚本运行模块;
所述第二业务脚本运行模块,用于在所述脚本调度器从银行服务端接收源代码形式的第一业务功能组件之前,向所述银行服务端发起第一业务功能组件请求。
8.根据权利要求7所述的浏览器客户端,其特征在于,所述第二业务脚本运行模块,用于通过以下方式执行业务处理:
所述第二业务脚本运行模块接收所述第二渲染展示模块发送的业务请求,判断所述业务请求是业务功能组件请求还是业务数据请求;如果是业务功能组件请求,则将所述业务功能组件请求发送给脚本调度器;如果是业务数据请求则向银行服务端请求相应的业务数据;
所述脚本调度器,还用于在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,从本地的第二业务功能组件中,查找到相应的第二业务功能组件,并将查找到的第二业务功能组件返回给所述第二业务脚本运行模块;或者,向银行服务端请求新的第一业务功能组件,并在所述第二业务脚本编译模块将所述新的第一业务功能组件编译成新的第二业务功能组件之后,将所述新的第二业务功能组件返回给所述第二业务脚本运行模块。
9.一种银行服务端,其特征在于,所述银行服务端包括:响应调度器、第二业务功能脚本库和第二业务逻辑处理模块;其中,
所述响应调度器,用于根据浏览器客户端的业务请求调用第二业务功能脚本库或者第二业务逻辑处理模块;
所述第二业务功能脚本库,用于存储目标代码形式的第一业务功能组件,以及用于被第二响应调度器调用时,向浏览器客户端提供相应的第一业务功能组件;
所述第二业务逻辑处理模块,用于被响应调度器调用时,执行业务逻辑处理。
10.根据权利要求9所述的银行服务端,其特征在于,所述响应调度器具体用于接收浏览器客户端发送的业务数据请求,并将所接收到的业务数据请求发送给第二业务逻辑处理模块;
所述第二业务逻辑处理模块,用于在接收到业务数据请求时,执行业务逻辑处理,生成业务数据,并向所述浏览器客户端返回所生成的业务数据。
11.根据权利要求10所述的银行服务端,其特征在于,所述响应调度器具体用于在接收到浏览器客户端发送的业务功能组件请求时,调用业务功能脚本库向所述浏览器客户端返回相应的第一业务功能组件。
12.一种业务功能实现***,其特征在于,所述***包括权利要求6-8其中任一项所述的浏览器客户端和权利要求9-11其中任一项所述的银行服务端。
13.一种业务功能实现方法,其特征在于,所述方法应用于浏览器客户端,所述浏览器客户端包括:第一业务脚本编译模块、第一业务脚本运行模块和第一渲染展示模块,所述方法包括:
第一业务脚本编译模块从银行服务端接收源代码形式的第一业务功能组件,并将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;
所述第一业务脚本运行模块运行所述业务脚本编译模块编码好的第二业务功能组件,从而执行业务处理;
所述第一渲染展示模块对所述第一业务脚本运行模块在执行业务处理时所生成的业务信息进行展示。
14.一种业务功能实现方法,其特征在于,所述方法应用于银行服务端,所述银行服务端包括:第一业务功能脚本库和第一业务逻辑处理模块,所述方法包括:
第一业务功能脚本库应浏览器客户端的业务功能组件请求,向浏览器客户端提供所述浏览器客户端所请求的第一业务功能组件;
第一业务逻辑处理模块应浏览器客户端的业务数据请求执行业务逻辑处理,从而向所述浏览器客户端返回业务数据。
15.一种业务功能实现方法,其特征在于,所述方法应用于浏览器客户端,所述浏览器客户端包括:脚本调度器、第二业务脚本编译模块、第二业务脚本运行模块和第二渲染展示模块,所述方法包括:
脚本调度器在从银行服务端接收到源代码形式的第一业务功能功能组件时,调用第二业务脚本编译模块将所述第一业务功能组件编译成目标代码形式的第二业务功能组件;同时,在接收到所述第二业务脚本运行模块发送的业务功能组件请求时,向所述第二业务脚本运行模块返回相应的第二业务功能组件;
第二业务脚本运行模块运行所述脚本调度器返回的第二业务功能组件,从而执行业务处理;
所述第二渲染展示模块对执行业务处理时所生成的业务信息进行展示。
16.一种业务功能实现方法,其特征在于,所述方法应用于银行服务端,所述银行服务端包括:响应调度器、第二业务功能脚本库和第二业务逻辑处理模块,所述方法包括:
所述响应调度器根据浏览器客户端的业务请求调用第二业务功能脚本库或者第二业务逻辑处理模块;
所述第二业务功能脚本库在被响应调度器调用时,向浏览器客户端提供相应的第一业务功能组件;
所述第二业务逻辑处理模块在被响应调度器调用时,执行业务逻辑处理。
17.一种计算机可读的存储介质,其特征在于,所述存储介质中存储有至少一条计算机指令,所述指令由处理器加载并执行以实现权利要求13至权利要求15中任意一项所述的业务功能实现方法中所执行的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110336635.9A CN112954075B (zh) | 2021-03-29 | 2021-03-29 | 一种业务功能实现方法、***、对应装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110336635.9A CN112954075B (zh) | 2021-03-29 | 2021-03-29 | 一种业务功能实现方法、***、对应装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112954075A true CN112954075A (zh) | 2021-06-11 |
CN112954075B CN112954075B (zh) | 2023-04-07 |
Family
ID=76227829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110336635.9A Active CN112954075B (zh) | 2021-03-29 | 2021-03-29 | 一种业务功能实现方法、***、对应装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112954075B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750281A (zh) * | 2011-04-19 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 一种浏览器的脚本处理方法和*** |
CN103544276A (zh) * | 2013-10-22 | 2014-01-29 | 北京京东尚科信息技术有限公司 | 一种采用虚拟机显示脚本文件的方法及装置 |
CN106293863A (zh) * | 2016-07-26 | 2017-01-04 | 北京北森云计算股份有限公司 | 多语言云编译实现***功能动态扩展替换的方法及*** |
CN106406828A (zh) * | 2015-07-28 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种修改java***业务工具功能的方法及装置 |
CN106775900A (zh) * | 2017-01-20 | 2017-05-31 | 陈刚 | 应用浏览器的调用方法和*** |
US20170168783A1 (en) * | 2015-12-10 | 2017-06-15 | Sap Se | Generating logic with scripting language in software as a service enterprise resource planning |
CN109325195A (zh) * | 2018-07-23 | 2019-02-12 | 招银云创(深圳)信息技术有限公司 | 浏览器的渲染方法和***、计算机设备、计算机存储介质 |
-
2021
- 2021-03-29 CN CN202110336635.9A patent/CN112954075B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102750281A (zh) * | 2011-04-19 | 2012-10-24 | 腾讯科技(深圳)有限公司 | 一种浏览器的脚本处理方法和*** |
CN103544276A (zh) * | 2013-10-22 | 2014-01-29 | 北京京东尚科信息技术有限公司 | 一种采用虚拟机显示脚本文件的方法及装置 |
CN106406828A (zh) * | 2015-07-28 | 2017-02-15 | 阿里巴巴集团控股有限公司 | 一种修改java***业务工具功能的方法及装置 |
US20170168783A1 (en) * | 2015-12-10 | 2017-06-15 | Sap Se | Generating logic with scripting language in software as a service enterprise resource planning |
CN106293863A (zh) * | 2016-07-26 | 2017-01-04 | 北京北森云计算股份有限公司 | 多语言云编译实现***功能动态扩展替换的方法及*** |
CN106775900A (zh) * | 2017-01-20 | 2017-05-31 | 陈刚 | 应用浏览器的调用方法和*** |
CN109325195A (zh) * | 2018-07-23 | 2019-02-12 | 招银云创(深圳)信息技术有限公司 | 浏览器的渲染方法和***、计算机设备、计算机存储介质 |
Non-Patent Citations (1)
Title |
---|
唐宁: "网上银行***的软件开发", 《中国金融电脑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN112954075B (zh) | 2023-04-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7065756B2 (en) | Optimization of portable operations in a client-server environment | |
US20100306738A1 (en) | Templating system and method for updating content in real time | |
CN109885355A (zh) | 一种应用启动方法及相关装置 | |
CN112445550B (zh) | 一种预处理函数的无服务器计算方法及其*** | |
CN111881392A (zh) | 展示页面的方法和装置 | |
EP1949228B1 (en) | Asynchronous just-in-time compilation | |
EP1445694A2 (en) | Modularization for J2ME platform implementation | |
CN112954075B (zh) | 一种业务功能实现方法、***、对应装置及存储介质 | |
CN103917951B (zh) | 应用调用的方法及操作***、浏览器 | |
CN112491940B (zh) | 代理服务器的请求转发方法及装置、存储介质及电子设备 | |
CN114301970B (zh) | 服务调用方法、装置、电子设备及存储介质 | |
CN112346608A (zh) | 一种基于业务活动结果显示的页面展示方法、装置和电子设备 | |
CN111488286A (zh) | 一种Android模块独立开发的方法及装置 | |
CN113220374A (zh) | 软件处理方法和装置 | |
CN113778564B (zh) | 一种高效执行evm智能合约的方法、设备及储存介质 | |
CN111400623B (zh) | 用于搜索信息的方法和装置 | |
CN113094429B (zh) | 数据处理方法、数据查询方法、计算机设备和存储介质 | |
CN115061678A (zh) | 一种基于浏览器代理服务的代码编译方法及客户端 | |
CN114579334A (zh) | 一种通信方法、装置、电子设备及存储介质 | |
CN115552369A (zh) | 编译方法、编译装置、编译***、存储介质与电子设备 | |
CN113704418A (zh) | 客服机器人***、相关方法、装置及设备 | |
CN114579167A (zh) | 一种下载应用升级文件的方法、装置及存储介质 | |
CN113961279A (zh) | 页面渲染方法、装置、服务器和存储介质 | |
CN111597189B (zh) | 获取数据的方法、装置、设备及存储介质 | |
CN108845803B (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 |