CN116861125A - 业务数据获取方法、装置、计算机设备及可读存储介质 - Google Patents
业务数据获取方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN116861125A CN116861125A CN202310819930.9A CN202310819930A CN116861125A CN 116861125 A CN116861125 A CN 116861125A CN 202310819930 A CN202310819930 A CN 202310819930A CN 116861125 A CN116861125 A CN 116861125A
- Authority
- CN
- China
- Prior art keywords
- script
- target
- page
- dynamic
- compiling
- 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
- 238000000034 method Methods 0.000 title claims abstract description 85
- 238000013515 script Methods 0.000 claims abstract description 577
- 230000004044 response Effects 0.000 claims abstract description 32
- 238000007726 management method Methods 0.000 claims description 35
- 239000000284 extract Substances 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 9
- 238000013499 data model Methods 0.000 claims description 8
- 238000001514 detection method Methods 0.000 claims description 6
- 238000009877 rendering Methods 0.000 claims description 6
- 238000002347 injection Methods 0.000 claims description 5
- 239000007924 injection Substances 0.000 claims description 5
- 230000008859 change Effects 0.000 abstract description 10
- 230000036541 health Effects 0.000 abstract description 7
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000011282 treatment Methods 0.000 abstract description 3
- 238000012545 processing Methods 0.000 description 26
- 230000008569 process Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 7
- RYYVLZVUVIJVGH-UHFFFAOYSA-N caffeine Chemical compound CN1C(=O)N(C)C(=O)C2=C1N=CN2C RYYVLZVUVIJVGH-UHFFFAOYSA-N 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000008901 benefit Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- LPHGQDQBBGAPDZ-UHFFFAOYSA-N Isocaffeine Natural products CN1C(=O)N(C)C(=O)C2=C1N(C)C=N2 LPHGQDQBBGAPDZ-UHFFFAOYSA-N 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 3
- 229960001948 caffeine Drugs 0.000 description 3
- VJEONQKOZGKCAK-UHFFFAOYSA-N caffeine Natural products CN1C(=O)N(C)C(=O)C2=C1C=CN2C VJEONQKOZGKCAK-UHFFFAOYSA-N 0.000 description 3
- 235000010627 Phaseolus vulgaris Nutrition 0.000 description 2
- 244000046052 Phaseolus vulgaris Species 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012377 drug delivery Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000010863 targeted diagnosis Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- ZLIBICFPKPWGIZ-UHFFFAOYSA-N pyrimethanil Chemical compound CC1=CC(C)=NC(NC=2C=CC=CC=2)=N1 ZLIBICFPKPWGIZ-UHFFFAOYSA-N 0.000 description 1
- 239000000243 solution Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/958—Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/957—Browsing optimisation, e.g. caching or content distillation
-
- 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)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请公开了一种业务数据获取方法、装置、计算机设备及可读存储介质,涉及互联网技术及数字医疗领域,可以提高医疗健康数据获取的灵活性,一旦开发人员想要改变组件的医疗健康数据来源,只需在运营管理后台更新不同动态脚本的启闭状态即可,提高了页面更新的响应速度。所述方法包括:响应于目标页面访问请求,检测目标页面的全部页面组件,确定目标动态脚本的脚本标识,目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本;若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。
Description
技术领域
本申请涉及互联网技术及数字医疗领域,特别是涉及一种业务数据获取方法、装置、计算机设备及可读存储介质。
背景技术
随着互联网技术的不断发展,出现了越来越多的医疗服务类应用程序,医疗应用程序一般根据患者的病情、病史和体检结果等医疗健康数据来提供针对性的诊断、治疗和管理服务,这些服务通常以活动页的形式展示在用户所在的客户端。
相关技术中,企业方通常会选择CMS(Content Management System,内容管理系统)架构编写活动页脚本。具体通过硬编码的方式为每个楼层编写配置数据。当用户基于客户端,请求访问CMS配置的活动页时,通过运行该活动页对应的脚本,每个楼层按照对应的配置数据调用对应的RPC接口获取来自不同业务方提供的业务数据,并将业务数据展示在客户端页面。
在实现本申请的过程中,申请人发现相关技术至少存在以下问题:
硬编码获取业务数据的方式灵活性较差,一旦楼层的医疗健康数据来源需要改变,开发人员就要在源码中更改对应楼层的配置数据。而一旦活动页源码发生改变就需要重新进行发布等流程,导致活动页更新响应速度慢、效率低。
发明内容
有鉴于此,本申请提供了一种业务数据获取方法、装置、计算机设备及可读存储介质,主要目的在于解决目前硬编码获取业务数据的方式灵活性较差,一旦楼层的医疗健康数据来源需要改变,开发人员就要在源码中更改对应楼层的配置数据。而一旦活动页源码发生改变就需要重新进行发布等流程,导致活动页更新响应速度慢、效率低的问题。
依据本申请第一方面,提供了一种业务数据获取方法,该方法包括:
响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,所述目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;
按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本;
若所述内存中存在所述目标编译脚本,则采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
可选地,所述响应于目标页面访问请求,检测所述目标页面的全部页面组件之前,所述方法还包括:
接收运行管理后台上传的动态脚本,将所述动态脚本存储至数据库中,得到所述动态脚本的脚本标识,并将所述脚本标识返回所述运行管理后台;
接收所述运行管理后台上传的脚本配置信息,所述脚本配置信息中包括待关联动态脚本的启闭状态、所述待关联动态脚本的脚本标识,以及与所述脚本标识关联的组件标识;
在所述数据库中按照所述脚本配置信息,设置所述待关联动态脚本的启闭状态,以及按照所述组件标识确定待关联页面组件,将所述待关联动态脚本的脚本标识与所述待关联页面组件关联。
可选地,所述响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,包括:
响应于所述目标页面访问请求,获取所述目标页面关联的可用组件列表;
遍历所述可用组件列表中记录的每个页面组件,将关联有动态脚本的页面组件作为目标页面组件,得到目标页面对应的全部目标页面组件,以及检测全部所述目标页面组件中每个所述目标页面组件关联的动态脚本的启闭状态;
当所述启闭状态为开启状态时,将所述启闭状态对应的动态脚本作为所述目标动态脚本。
可选地,所述按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本之后,所述方法还包括:
若所述内存中不存在所述目标编译脚本,则在数据库中按照所述脚本标识获取所述目标动态脚本,以及依据所述目标动态脚本的脚本语种,确定所述目标脚本引擎,所述目标脚本引擎是与所述脚本语种匹配的脚本引擎;
采用所述目标脚本引擎,对所述目标动态脚本进行脚本编译,得到所述目标编译脚本,并将所述脚本标识与所述目标编译脚本关联;
采用预设缓存工具将关联有脚本标识的目标编译脚本缓存至所述内存;
采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
可选地,所述采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据,包括:
将通用接口参数传递至所述目标脚本引擎的预设属性中,以及将所述目标编译脚本的脚本内容和脚本参数传递至所述预设属性中,所述通用接口参数是从依赖注入容器中注入的分布式服务框架的内部接口参数;
采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据。
可选地,所述采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据,包括:
采用所述目标脚本引擎调用所述目标编译脚本中的帮助接口属性实例的实现类,在所述预设属性中的脚本参数中抽取所述远程接口的全限定名,并依据所述全限定名生成所述通用接口参数的通用实例;
通过所述通用实例在所述预设属性中的脚本参数中抽取方法名、参数类型数组和参数值数组,将所述方法名、所述参数类型数组和所述参数值数组写入方法调用请求,通过执行所述方法调用请求泛化调用所述方法名指示的目标方法以访问所述远程接口获取所述业务数据。
可选地,所述采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据之后,所述方法还包括:
执行所述目标页面中关联的全部所述目标动态脚本,将全部所述目标动态脚本获取到的全部业务数据逐一填充至关联的页面组件的数据模型中,得到待展示页面,并将所述待展示页面发送至客户端进行渲染展示。
依据本申请第二方面,提供了一种业务数据获取装置,该装置包括:
检测模块,用于响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,所述目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;
查询模块,用于按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本;
获取模块,用于若所述内存中存在所述目标编译脚本,则采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
可选地,所述装置还包括:
接收模块,用于接收运行管理后台上传的动态脚本,将所述动态脚本存储至数据库中,得到所述动态脚本的脚本标识,并将所述脚本标识返回所述运行管理后台;
所述接收模块,还用于接收所述运行管理后台上传的脚本配置信息,所述脚本配置信息中包括待关联动态脚本的启闭状态、所述待关联动态脚本的脚本标识,以及与所述脚本标识关联的组件标识;
设置模块,用于在所述数据库中按照所述脚本配置信息,设置所述待关联动态脚本的启闭状态,以及按照所述组件标识确定待关联页面组件,将所述待关联动态脚本的脚本标识与所述待关联页面组件关联。
可选地,所述检测模块,用于响应于所述目标页面访问请求,获取所述目标页面关联的可用组件列表;遍历所述可用组件列表中记录的每个页面组件,将关联有动态脚本的页面组件作为目标页面组件,得到目标页面对应的全部目标页面组件,以及检测全部所述目标页面组件中每个所述目标页面组件关联的动态脚本的启闭状态;当所述启闭状态为开启状态时,将所述启闭状态对应的动态脚本作为所述目标动态脚本。
可选地,所述获取模块,还用于若所述内存中不存在所述目标编译脚本,则在数据库中按照所述脚本标识获取所述目标动态脚本,以及依据所述目标动态脚本的脚本语种,确定所述目标脚本引擎,所述目标脚本引擎是与所述脚本语种匹配的脚本引擎;采用所述目标脚本引擎,对所述目标动态脚本进行脚本编译,得到所述目标编译脚本,并将所述脚本标识与所述目标编译脚本关联;采用预设缓存工具将关联有脚本标识的目标编译脚本缓存至所述内存;采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
可选地,所述获取模块,用于将通用接口参数传递至所述目标脚本引擎的预设属性中,以及将所述目标编译脚本的脚本内容和脚本参数传递至所述预设属性中,所述通用接口参数是从依赖注入容器中注入的分布式服务框架的内部接口参数;采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据。
可选地,所述获取模块,用于采用所述目标脚本引擎调用所述目标编译脚本中的帮助接口属性实例的实现类,在所述预设属性中的脚本参数中抽取所述远程接口的全限定名,并依据所述全限定名生成所述通用接口参数的通用实例;通过所述通用实例在所述预设属性中的脚本参数中抽取方法名、参数类型数组和参数值数组,将所述方法名、所述参数类型数组和所述参数值数组写入方法调用请求,通过执行所述方法调用请求泛化调用所述方法名指示的目标方法以访问所述远程接口获取所述业务数据。
可选地,所述装置还包括:
展示模块,用于执行所述目标页面中关联的全部所述目标动态脚本,将全部所述目标动态脚本获取到的全部业务数据逐一填充至关联的页面组件的数据模型中,得到待展示页面,并将所述待展示页面发送至客户端进行渲染展示。
依据本申请第三方面,提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一项所述方法的步骤。
依据本申请第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中任一项所述的方法的步骤。
借由上述技术方案,本申请提供的一种业务数据获取方法、装置、计算机设备及可读存储介质,本申请响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本申请的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本申请实施例提供的一种业务数据获取方法流程示意图;
图2A示出了本申请实施例提供的一种业务数据获取方法流程示意图;
图2B示出了本申请实施例提供的一种业务数据获取方法流程示意图;
图2C示出了本申请实施例提供的一种业务数据获取方法流程示意图;
图3A示出了本申请实施例提供的一种业务数据获取装置的结构示意图;
图3B示出了本申请实施例提供的一种业务数据获取装置的结构示意图;
图3C示出了本申请实施例提供的一种业务数据获取装置的结构示意图
图4示出了本申请实施例提供的一种计算机设备的装置结构示意图。
具体实施方式
下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够将本申请的范围完整的传达给本领域的技术人员。
随着互联网技术的不断发展,出现了越来越多的医疗服务类应用程序,医疗应用程序一般根据患者的病情、病史和体检结果等医疗健康数据来提供针对性的诊断、治疗和管理服务,这些服务通常以活动页的形式展示在用户所在的客户端。目前,企业方通常会选择CMS(Content Management System,内容管理系统)架构编写活动页脚本。具体通过硬编码的方式为每个楼层编写配置数据。当用户基于客户端,请求访问CMS配置的活动页时,通过运行该活动页对应的脚本,每个楼层按照对应的配置数据调用对应的RPC接口获取来自不同业务方提供的业务数据,并将业务数据展示在客户端页面。但是申请人认识到,硬编码获取业务数据的方式灵活性较差,一旦楼层的医疗健康数据来源需要改变,开发人员就要在源码中更改对应楼层的配置数据。而一旦活动页源码发生改变就需要重新进行发布等流程,导致活动页更新响应速度慢、效率低。因此,本申请提供了一种业务数据获取方法,本方法响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
本申请实施例提供了一种业务数据获取方法,如图1所示,该方法包括:
101、响应于目标页面访问请求,检测目标页面的全部页面组件,确定目标动态脚本的脚本标识,目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本。
在本申请实施例中,目标页面是CMS(Content Management System,内容管理系统)配置的落地页。其中,落地页是由多个页面组件构成的面向手机应用等客户端的用户界面,落地页中的每个页面组件可以根据业务需求动态配置是否使用动态脚本。
具体的,在医疗领域中,CMS应用程序常用于管理和共享医疗数据和文档,以及提供医疗服务和支持。例如,一个医院的CMS应用程序可以提供患者信息管理、病历管理、预约挂号、在线问诊、药品配送等各种功能和服务。实际运行过程中,CMS核心处理应用响应于用户基于客户端发送的目标页面访问请求,检测目标页面的全部页面组件。对于全部页面组件中的每个页面组件,检测页面组件是否关联有动态脚本,在该页面组件关联有动态脚本的前提下,逐一检测其关联的每个动态脚本的启闭状态。当启闭状态指示关闭时,过滤该动态脚本,对下一动态脚本的启闭状态进行检测。当启闭状态指示开启时,将该动态脚本作为目标动态脚本并检测下一个动态脚本的启闭状态。
102、按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。
其中,脚本标识即脚本ID,可以采用数字、字母或数字与字母结合的形式,本申请对脚本标识的形式不进行具体限定。目标编译脚本是将目标动态脚本编译为特定的字节码格式的文件。
由于医疗应用程序需要实时响应和处理大量的医疗数据和文档,因此采用动态脚本的方式实现数据获取和处理已经成为了一种比较常见的做法。但是,由于动态脚本第一次编译会比较耗时,所以在实际的应用中,为了提高响应速度和效率,通常会将编译后的脚本缓存到本地内存中,以供后续的访问和使用。具体的,在动态脚本第一次编译后,CMS核心处理应用会使用Caffeine等缓存工具将编译后的编译脚本缓存在本地内存中。因此,在本申请实施例中,为了使前端更快的获得响应,CMS核心处理应用需要在本地内存中查询是否有已经编译好的目标动态脚本,也就是目标编译脚本。
103、若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。
其中,目标脚本引擎是与目标动态脚本的脚本语种匹配的脚本引擎,用于编译目标动态脚本以及进行目标编译脚本的估值执行。
具体的,若内存中存在目标编译脚本,则说明此前CMS核心处理应用已经采用与目标动态脚本语种匹配的目标脚本引擎编译过目标动态脚本,此时直接采用目标脚本引擎执行目标编译脚本的脚本内容即可,通过运行目标编译脚本来调用远程接口获取业务数据。在医疗领域中,通过缓存目标编译脚本的方式,可以为医疗应用程序提供更高效、更安全、更可靠的运行环境,从而帮助医疗工作者更好地管理医疗数据,提高医疗服务质量和效率。
本实施例提供的业务数据获取方法,响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的实施过程,本申请实施例提供了一种业务数据获取方法,如图2A所示,该方法包括:
201、设置动态脚本与页面组件之间的关联关系。
其中,运行管理后台有一菜单页面,用于维护动态脚本的配置和管理,包括动态脚本的语种种类、导入、修改、调试、审批和上下线。动态脚本支持多语言语种,可由groovy,scala、javascript和python等语言编写。在实际运行过程中,运行管理后台与CMS核心处理应用连接,相关工作人员可以将编写好的动态脚本上传至CMS核心处理应用,经由CMS核心处理应用将动态脚本存储至数据库中,并将动态脚本在数据库中的数据标识返回至运行管理后台。
进一步地,在医疗领域中,为了提高CMS应用程序的灵活性和可配置性,通常允许运行管理后台上传脚本配置信息和动态脚本。其中,脚本配置信息包括待关联动态脚本的启闭状态、待关联动态脚本的脚本标识,以及与脚本标识关联的组件标识。由CMS核心处理应用在数据库中按照脚本配置信息,设置待关联动态脚本的启闭状态,以及按照组件标识确定待关联页面组件,将待关联动态脚本的脚本标识与待关联页面组件关联。需要说明的是,相关技术人员在上传动态脚本时也可以同时上传该动态脚本的脚本配置信息,此时的脚本配置信息包括动态脚本的启闭状态和与该动态脚本关联的组件标识。CMS核心处理应用在将动态脚本存储至数据库后,获取该动态脚本的脚本标识。进而按照脚本配置信息,设置待关联动态脚本的启闭状态,以及确定脚本配置信息中组件标识对应的页面组件,将脚本标识与该页面组件关联。
202、响应于目标页面访问请求,检测目标页面的全部页面组件,确定目标动态脚本的脚本标识。
在本申请实施例中,CMS核心处理应用响应于用户基于客户端发送的目标页面访问请求,检测目标页面的全部页面组件。对于全部页面组件中的每个页面组件,检测页面组件是否关联有动态脚本,在该页面组件关联有动态脚本的前提下,逐一检测其关联的每个动态脚本的启闭状态,通过每个动态脚本的启闭状态来确定其是否可以作为目标动态脚本。
具体地,在医疗领域中,CMS应用程序常用于管理和共享医疗数据和文档,以及提供医疗服务和支持。例如,一个医院的CMS应用程序可以提供患者信息管理、病历管理、预约挂号、在线问诊、药品配送等各种功能和服务。实际运行过程中,CMS核心处理应用响应于目标页面访问请求,获取目标页面关联的可用组件列表。进一步地,CMS核心处理应用遍历可用组件列表中记录的每个页面组件,将关联有动态脚本的页面组件作为目标页面组件,得到目标页面对应的全部目标页面组件。随后,检测全部目标页面组件中每个目标页面组件关联的动态脚本的启闭状态。当启闭状态指示关闭时,过滤该启闭状态对应的动态脚本,对下一动态脚本的启闭状态进行检测。当启闭状态指示开启时,将该启闭状态对应的动态脚本作为目标动态脚本并检测下一个动态脚本的启闭状态。在实际运行过程中,一个页面组件可以关联多个动态脚本,每个动态脚本对应获取一个业务方的业务数据,哪个动态脚本的启闭状态为开启状态就将该动态脚本作为目标动态脚本,获取该动态脚本对应业务方的业务数据。例如,宣传图组件A关联有A1、A2、A3三个动态脚本,分别获取医疗服务提供商a1、a2、a3的服务介绍展示图,其中A2动态脚本的脚本状态为开启状态,则将A2动态脚本作为目标动态脚本,执行A2动态脚本调用远程接口获取医疗服务提供商a2提供的服务介绍展示图。
203、按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。
具体的,由于医疗应用程序需要实时响应和处理大量的医疗数据和文档,因此采用动态脚本的方式实现数据获取和处理已经成为了一种比较常见的做法。但是,由于动态脚本第一次编译会比较耗时,所以在实际的应用中,为了提高响应速度和效率,通常会将编译后的脚本缓存到本地内存中,以供后续的访问和使用。具体的,在动态脚本第一次编译后,会使用Caffeine等缓存工具将编译后的编译脚本缓存在本地内存中。因此,在本申请实施例中,为了使前端更快的获得响应,CMS核心处理应用需要在本地内存中查询是否有已经编译好的目标动态脚本,也就是目标编译脚本。若内存中存在目标编译脚本,就可以执行下述步骤204,节省编译时间,直接采用目标脚本引擎执行目标编译文本来获取业务数据。若内存中不存在目标编译脚本,就需要执行下述步骤205,花费时间对目标动态脚本进行编译,得到目标编译脚本。再采用目标脚本引擎执行目标编译文本来获取业务数据。
204、若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。
在医疗领域中,通过缓存目标编译脚本的方式,可以为医疗应用程序提供更高效、更安全、更可靠的运行环境,从而帮助医疗工作者更好地管理医疗数据,提高医疗服务质量和效率。若内存中存在目标编译脚本,则说明此前CMS核心处理应用已经编译过目标动态脚本,此时直接采用目标脚本引擎执行本地内存中的存储的目标编译脚本即可。采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本基于Dubbo SPI的架构原理,调用远程接口获取业务数据的具体过程如下:
首先,CMS核心处理应用将从依赖注入Spring容器中注入的分布式服务框架dubbo的内部通用接口参数GenericService传递至目标脚本引擎的预设属性Bindings属性中,以及将目标编译脚本的脚本内容和脚本参数传递至预设属性。
随后,采用目标脚本引擎执行目标编译脚本的脚本内容,生成通用接口参数的通用实例。具体地,目标动态脚本中有引入一个java的帮助接口属性bean,对帮助接口属性bean进行实例化,得到帮助接口属性实例。目标脚本引擎调用目标编译脚本中的帮助接口属性实例的实现类并传入预设属性中的远程接口的全限定名。该实现类可以根据该远程接口的全限定名,生成、注册和获取到一个dubbo的通用接口参数GenericService的通用实例Instance实例。
最终,通用实例在预设属性中抽取脚本参数,依据脚本参数调用远程接口获取业务数据。具体地,通用实例在预设属性中的脚本参数中抽取方法名、参数类型数组和参数值数组,将方法名、参数类型数组和参数值数组写入方法调用请求$invoke(method_name,param_type,param_value),通过执行方法调用请求泛化调用方法名指示的目标方法以访问远程接口获取业务数据。
205、若内存中不存在目标编译脚本,则在数据库中获取目标动态脚本进行编译,得到目标编译脚本并缓存至内存中,以及采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。
在本申请实施例中,若内存中不存在目标编译脚本,就需要花费时间对目标动态脚本进行编译,得到目标编译脚本后再采用目标脚本引擎执行目标编译文本来获取业务数据。具体地,若内存中不存在目标编译脚本,则在数据库中按照脚本标识获取目标动态脚本,以及依据目标动态脚本的脚本语种和JSR-223规范,在引擎管理类ScriptEngineManager中确定与脚本语种匹配的目标脚本引擎。随后,采用目标脚本引擎,对目标动态脚本进行脚本编译,得到目标编译脚本,并将脚本标识与目标编译脚本关联。再采用预设缓存工具,将关联有脚本标识的目标编译脚本缓存至内存,其中,预设缓存工具可以是Caffeine等。最后,采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。另外,在实际运行时若确定的目标编译引擎无法支持编译,则生成异常提示,将异常提示发送至运行管理后台,以使相关工作人员进行异常处理。
206、生成目标页面的待展示页面,将待展示页面发送至客户端进行页面展示。
进一步地,执行目标页面中关联的全部目标动态脚本,将全部目标动态脚本获取到的全部业务数据逐一填充至关联的页面组件的数据模型中,得到目标页面的待展示页面,也就是填充了业务数据的目标页面。最终将待展示页面发送至客户端进行渲染展示。例如,目标页面为展示患者的病历信息的页面,目标页面可能会包含多个组件,比如病历信息概览、就诊记录、检查报告等。每个组件都需要调用对应的目标动态脚本获取业务数据,然后将获取到的数据填充到自己的数据模型中。实际运行时,CMS核心处理应用根据接口参数,执行目标页面中关联的全部目标动态脚本,获取到目标动态脚本返回的全部业务数据。CMS核心处理应用将获取到的业务数据逐一填充至与页面组件关联的数据模型中,得到待展示页面,也就是填充了业务数据的目标页面。最终,CMS核心处理应用将待展示页面发送至客户端进行渲染展示。
综上所述,如图2B和2C所示,本申请包括客户端、网关、CMS核心处理应用、运营管理后台和数据库。在实际运行过程中,用户基于客户端上传目标页面访问请求,目标访问请求经网关转发至CMS核心处理应用,以使CMS核心处理应用响应于目标页面访问请求,检测目标页面是否存在目标动态脚本。若存在,则CMS核心处理应用根据目标动态脚本的脚本标识,在数据库中获取目标动态脚本。进一步地,在本地内存中查询目标动态脚本是否存在已编译的目标编译脚本。若存在,则将通用接口参数GenericService传递至目标脚本引擎的预设属性中,以及将目标编译脚本的脚本内容和脚本参数传递至预设属性中。若不存在,则先根据目标动态脚本的脚本语种确定目标脚本引擎,进而采用目标脚本引擎对目标动态脚本进行编译,再将通用接口参数GenericService传递至目标脚本引擎的预设属性中,以及将目标编译脚本的脚本内容和脚本参数传递至预设属性中。最后,采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据,将业务数据填充至对应组件的数据模型后将目标页面发送至客户端进行展示。
本申请实施例提供的业务数据获取方法,响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
进一步地,作为图1所述方法的具体实现,本申请实施例提供了一种业务数据获取装置,如图3A所示,所述装置包括:检测模块301、查询模块302、获取模块303。
该检测模块301,用于响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,所述目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;
该查询模块302,用于按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本;
该获取模块303,用于若所述内存中存在所述目标编译脚本,则采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
在具体应用场景中,如图3B所示,所述装置还包括:接收模块304、设置模块305。
该接收模块304,用于接收运行管理后台上传的动态脚本,将所述动态脚本存储至数据库中,得到所述动态脚本的脚本标识,并将所述脚本标识返回所述运行管理后台;
该接收模块304,还用于接收所述运行管理后台上传的脚本配置信息,所述脚本配置信息中包括待关联动态脚本的启闭状态、所述待关联动态脚本的脚本标识,以及与所述脚本标识关联的组件标识;
该设置模块305,用于在所述数据库中按照所述脚本配置信息,设置所述待关联动态脚本的启闭状态,以及按照所述组件标识确定待关联页面组件,将所述待关联动态脚本的脚本标识与所述待关联页面组件关联。
在具体应用场景中,该检测模块301,用于响应于所述目标页面访问请求,获取所述目标页面关联的可用组件列表;遍历所述可用组件列表中记录的每个页面组件,将关联有动态脚本的页面组件作为目标页面组件,得到目标页面对应的全部目标页面组件,以及检测全部所述目标页面组件中每个所述目标页面组件关联的动态脚本的启闭状态;当所述启闭状态为开启状态时,将所述启闭状态对应的动态脚本作为所述目标动态脚本。
在具体应用场景中,该获取模块303,还用于若所述内存中不存在所述目标编译脚本,则在数据库中按照所述脚本标识获取所述目标动态脚本,以及依据所述目标动态脚本的脚本语种,确定所述目标脚本引擎,所述目标脚本引擎是与所述脚本语种匹配的脚本引擎;采用所述目标脚本引擎,对所述目标动态脚本进行脚本编译,得到所述目标编译脚本,并将所述脚本标识与所述目标编译脚本关联;采用预设缓存工具将关联有脚本标识的目标编译脚本缓存至所述内存;采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
在具体应用场景中,该获取模块303,用于将通用接口参数传递至所述目标脚本引擎的预设属性中,以及将所述目标编译脚本的脚本内容和脚本参数传递至所述预设属性中,所述通用接口参数是从依赖注入容器中注入的分布式服务框架的内部接口参数;采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据。
在具体应用场景中,该获取模块303,用于采用所述目标脚本引擎调用所述目标编译脚本中的帮助接口属性实例的实现类,在所述预设属性中的脚本参数中抽取所述远程接口的全限定名,并依据所述全限定名生成所述通用接口参数的通用实例;通过所述通用实例在所述预设属性中的脚本参数中抽取方法名、参数类型数组和参数值数组,将所述方法名、所述参数类型数组和所述参数值数组写入方法调用请求,通过执行所述方法调用请求泛化调用所述方法名指示的目标方法以访问所述远程接口获取所述业务数据。
在具体应用场景中,如图3C所示,所述装置还包括:展示模块306。
该展示模块306,用于执行所述目标页面中关联的全部所述目标动态脚本,将全部所述目标动态脚本获取到的全部业务数据逐一填充至关联的页面组件的数据模型中,得到待展示页面,并将所述待展示页面发送至客户端进行渲染展示。
本申请实施例提供的装置,响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
需要说明的是,本申请实施例提供的一种业务数据获取装置所涉及各功能单元的其他相应描述,可以参考图1和图2中的对应描述,在此不再赘述。
基于上述如图1、图2所示方法,相应的,本实施例还提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述的业务数据获取方法的步骤。
基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该待识别软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施场景所述的方法。
基于上述如图1、图2所示的方法,以及图3A至图3C所示的业务数据获取装置实施例,为了实现上述目的,在示例性实施例中,参见图4,还提供了一种设备,该设备包括通信总线、处理器、存储器和通信接口,还可以包括输入输出接口和显示设备,其中,各个功能单元之间可以通过总线完成相互间的通信。该存储器存储有计算机程序,处理器,用于执行存储器上所存放的程序,执行上述实施例中的业务数据获取方法。
可选的,该实体设备还可以包括用户接口、网络接口、摄像头、射频(RadioFrequency,RF)电路,传感器、音频电路、WI-FI模块等等。用户接口可以包括显示屏(Display)、输入单元比如键盘(Keyboard)等,可选用户接口还可以包括USB接口、读卡器接口等。网络接口可选的可以包括标准的有线接口、无线接口(如WI-FI接口)等。
本领域技术人员可以理解,本实施例提供的一种业务数据获取的实体设备结构并不构成对该实体设备的限定,可以包括更多或更少的部件,或者组合某些部件,或者不同的部件布置。
存储介质中还可以包括操作系统、网络通信模块。操作系统是管理上述实体设备硬件和待识别软件资源的程序,支持信息处理程序以及其它待识别软件和/或程序的运行。网络通信模块用于实现存储介质内部各组件之间的通信,以及与信息处理实体设备中其它硬件和软件之间通信。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本申请可以借助软件加必要的通用硬件平台的方式来实现,也可以通过硬件实现。通过应用本申请的技术方案,响应于目标页面访问请求,检测目标页面的全部页面组件,确定启闭状态为开启状态且与任一页面组件关联的目标动态脚本的脚本标识。进一步地,按照脚本标识,在内存中查询目标动态脚本对应的目标编译脚本。若内存中存在目标编译脚本,则采用目标脚本引擎执行目标编译脚本的脚本内容,以使目标编译脚本调用远程接口获取业务数据。与现有技术相比,本申请实施例扩展编写能够调用远程接口的动态脚本,进而通过将动态脚本与目标页面的组件关联实现将动态脚本获取到的业务数据填充至对应组件中,而不需要侵入目标页面的页面源码,保持了目标页面的完整性。一旦开发人员想要改变组件的医疗业务数据来源,只需在运营管理后台关闭当前使用的动态脚本,开启所需动态脚本即可。无需改动源码就可以实现数据源和数据结构的扩展和解耦,提高了页面更新的响应速度和开发人员的工作效率,避免了硬编码方式获取医疗业务数据所导致的响应速度慢、效率低的问题。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本申请所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本申请序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本申请的几个具体实施场景,但是,本申请并非局限于此,任何本领域的技术人员能思之的变化都应落入本申请的保护范围。
Claims (10)
1.一种业务数据获取方法,其特征在于,包括:
响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,所述目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;
按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本;
若所述内存中存在所述目标编译脚本,则采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
2.根据权利要求1所述的方法,其特征在于,所述响应于目标页面访问请求,检测所述目标页面的全部页面组件之前,所述方法还包括:
接收运行管理后台上传的动态脚本,将所述动态脚本存储至数据库中,得到所述动态脚本的脚本标识,并将所述脚本标识返回所述运行管理后台;
接收所述运行管理后台上传的脚本配置信息,所述脚本配置信息中包括待关联动态脚本的启闭状态、所述待关联动态脚本的脚本标识,以及与所述脚本标识关联的组件标识;
在所述数据库中按照所述脚本配置信息,设置所述待关联动态脚本的启闭状态,以及按照所述组件标识确定待关联页面组件,将所述待关联动态脚本的脚本标识与所述待关联页面组件关联。
3.根据权利要求1所述的方法,其特征在于,所述响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,包括:
响应于所述目标页面访问请求,获取所述目标页面关联的可用组件列表;
遍历所述可用组件列表中记录的每个页面组件,将关联有动态脚本的页面组件作为目标页面组件,得到目标页面对应的全部目标页面组件,以及检测全部所述目标页面组件中每个所述目标页面组件关联的动态脚本的启闭状态;
当所述启闭状态为开启状态时,将所述启闭状态对应的动态脚本作为所述目标动态脚本。
4.根据权利要求1所述的方法,其特征在于,所述按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本之后,所述方法还包括:
若所述内存中不存在所述目标编译脚本,则在数据库中按照所述脚本标识获取所述目标动态脚本,以及依据所述目标动态脚本的脚本语种,确定所述目标脚本引擎,所述目标脚本引擎是与所述脚本语种匹配的脚本引擎;
采用所述目标脚本引擎,对所述目标动态脚本进行脚本编译,得到所述目标编译脚本,并将所述脚本标识与所述目标编译脚本关联;
采用预设缓存工具将关联有脚本标识的目标编译脚本缓存至所述内存;
采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
5.根据权利要求1所述的方法,其特征在于,所述采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据,包括:
将通用接口参数传递至所述目标脚本引擎的预设属性中,以及将所述目标编译脚本的脚本内容和脚本参数传递至所述预设属性中,所述通用接口参数是从依赖注入容器中注入的分布式服务框架的内部接口参数;
采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据。
6.根据权利要求5所述的方法,其特征在于,所述采用所述目标脚本引擎执行所述目标编译脚本的脚本内容,生成所述通用接口参数的通用实例,以使所述通用实例在所述预设属性中抽取所述脚本参数,依据所述脚本参数调用所述远程接口获取所述业务数据,包括:
采用所述目标脚本引擎调用所述目标编译脚本中的帮助接口属性实例的实现类,在所述预设属性中的脚本参数中抽取所述远程接口的全限定名,并依据所述全限定名生成所述通用接口参数的通用实例;
通过所述通用实例在所述预设属性中的脚本参数中抽取方法名、参数类型数组和参数值数组,将所述方法名、所述参数类型数组和所述参数值数组写入方法调用请求,通过执行所述方法调用请求泛化调用所述方法名指示的目标方法以访问所述远程接口获取所述业务数据。
7.根据权利要求1所述的方法,其特征在于,所述采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据之后,所述方法还包括:
执行所述目标页面中关联的全部所述目标动态脚本,将全部所述目标动态脚本获取到的全部业务数据逐一填充至关联的页面组件的数据模型中,得到待展示页面,并将所述待展示页面发送至客户端进行渲染展示。
8.一种业务数据获取装置,其特征在于,包括:
检测模块,用于响应于目标页面访问请求,检测所述目标页面的全部页面组件,确定目标动态脚本的脚本标识,所述目标动态脚本是启闭状态为开启状态且与任一页面组件关联的动态脚本;
查询模块,用于按照所述脚本标识,在内存中查询所述目标动态脚本对应的目标编译脚本;
获取模块,用于若所述内存中存在所述目标编译脚本,则采用目标脚本引擎执行所述目标编译脚本的脚本内容,以使所述目标编译脚本调用远程接口获取业务数据。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310819930.9A CN116861125A (zh) | 2023-07-05 | 2023-07-05 | 业务数据获取方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310819930.9A CN116861125A (zh) | 2023-07-05 | 2023-07-05 | 业务数据获取方法、装置、计算机设备及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116861125A true CN116861125A (zh) | 2023-10-10 |
Family
ID=88222848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310819930.9A Pending CN116861125A (zh) | 2023-07-05 | 2023-07-05 | 业务数据获取方法、装置、计算机设备及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116861125A (zh) |
-
2023
- 2023-07-05 CN CN202310819930.9A patent/CN116861125A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108052334B (zh) | 页面跳转方法、装置、计算机设备和存储介质 | |
US20210165668A1 (en) | Third party integration of plugins and widgets | |
US8549471B2 (en) | Method and apparatus for providing API service and making API mash-up, and computer readable recording medium thereof | |
CN110275831B (zh) | 协议接口的mock数据校验方法和装置 | |
CN110311973A (zh) | 一种面向多租户的影像云服务系统及方法 | |
CN113658591B (zh) | 一种面向智能家居的语音交互适配系统 | |
US20200007637A1 (en) | Methods and apparatus to identify sponsored media in a document object model | |
CN113225379A (zh) | 一种http请求消息的发送方法及装置 | |
CN113408254A (zh) | 一种页面表单信息填写方法、装置、设备和可读介质 | |
CN112470216B (zh) | 语音应用平台 | |
CN116521552A (zh) | 一种测试缺陷的获取方法、装置、设备及可读存储介质 | |
CN110704041A (zh) | 软件开发方法及装置 | |
CN116861125A (zh) | 业务数据获取方法、装置、计算机设备及可读存储介质 | |
CN114884804B (zh) | 基于微服务的多渠道信息隔离方法、装置和计算机设备 | |
CN111813816A (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN113672225B (zh) | 用户界面的处理方法、装置、设备及存储介质 | |
CN112769975B (zh) | 一种数据集成方法、装置、服务器及存储介质 | |
CN115357319A (zh) | 一种用户界面渲染方法及装置 | |
CN112052234B (zh) | 业务数据的处理方法和装置、存储介质、电子装置 | |
CN112256564B (zh) | 应用程序的运行方法、装置及电子设备 | |
CN114242255A (zh) | 医疗数据处理方法、装置、存储介质及电子设备 | |
CN115514806B (zh) | 一种离散服务集群的感知发现方法及系统 | |
CN110505258A (zh) | 网页加载及响应方法、装置、计算机设备和存储介质 | |
CN112988291B (zh) | 页面事件管理方法、装置、计算机可读介质及电子设备 | |
CN114996345B (zh) | 基于ogc网络处理服务的在线服务组合方法 |
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 |