CN115469934A - 配置文件加载方法、装置及设备 - Google Patents
配置文件加载方法、装置及设备 Download PDFInfo
- Publication number
- CN115469934A CN115469934A CN202110651034.7A CN202110651034A CN115469934A CN 115469934 A CN115469934 A CN 115469934A CN 202110651034 A CN202110651034 A CN 202110651034A CN 115469934 A CN115469934 A CN 115469934A
- Authority
- CN
- China
- Prior art keywords
- configuration
- information
- project
- configuration file
- preset
- 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
- 238000011068 loading method Methods 0.000 title claims abstract description 55
- 238000000034 method Methods 0.000 claims abstract description 53
- 238000003860 storage Methods 0.000 claims description 48
- 238000004590 computer program Methods 0.000 claims description 10
- 238000012545 processing Methods 0.000 claims description 10
- 238000012544 monitoring process Methods 0.000 claims description 9
- 238000012360 testing method Methods 0.000 description 11
- 238000004519 manufacturing process Methods 0.000 description 8
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010926 purge Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
- G06F9/4451—User profiles; Roaming
-
- 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例提供一种配置文件加载方法、装置及设备,所述方法应用于服务器,所述方法包括:在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件,所述方法通过在第三方jar包加载配置文件之前获取所需要的目标配置信息,并以预设要求存储为本地配置文件,无需人工手动处理配置文件,能够实现配置文件的自动化加载,提高jar包的运行效率。
Description
技术领域
本发明实施例涉及互联网技术领域,尤其涉及配置文件加载方法、装置及设备。
背景技术
伴随着互联网的快速发展,越来越多的线下配置转移到线上统一管理。即通过配置中心将不同项目中在不同环境下的配置文件统一管理。
通常情况下,当服务器在运行某一项目时会自动去配置中心获取配置文件并打包。但是,当项目中包含一些预设第三方jar包(Java Archive,Java归档文件)时,会在使用文档中标注在服务器本地必须存储有预设要求的配置文件,以实现在运行该项目时,从服务器本地获取配置文件。由于所有的配置文件通过配置中心进行管理,使得在服务器本地未存储配置文件。而现有技术中,通常是通过手动的方法写一份配置文件并存储在服务器本地。
因此,现有技术中存在着在运行包含预设第三方jar包的项目时无法实现配置文件的自动化加载的问题。
发明内容
本发明实施例提供一种配置文件加载方法、装置及设备,以解决在运行包含预设第三方jar包的项目时无法实现配置文件的自动化加载的问题。
第一方面,本发明实施例提供一种配置文件加载方法,应用于服务器,所述方法包括:
在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
可选的,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
通过监听器监听项目是否启动;所述监听器建立在所述项目中;
当监听到包含预设第三方jar包的项目启动时,向所述配置中心发送请求信息。
可选的,加载接收的所述目标配置信息,生成满足要求的本地配置文件,包括:
获取与所述预设第三方jar包对应的存储路径信息和文件名称信息;
将获取的所述目标配置信息加载至与所述存储路径信息对应的存储位置处的临时文件夹内,并根据所述文件名称信息修改所述临时文件夹的名称,得到满足要求的本地配置文件。
可选的,所述请求信息包括服务器类型和配置标识信息,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息,包括:
向配置中心发送包含服务器类型和配置标识信息的请求信息,以使所述配置中心根据所述服务器类型确定所述目标配置信息所在的存储空间,并根据所述配置标识信息确定所述目标配置信息。
可选的,所述本地配置文件所属的文件夹为临时文件夹,在所述第三方jar包在运行时调用所述本地配置文件后,还包括:执行将所述临时文件夹清除的操作。
可选的,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
检测所述项目中是否存在预设第三方jar包,若存在预设第三方jar包,则在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息。
第二方面,本发明实施例提供一种配置文件加载装置,所述装置包括:
发送模块,用于在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
处理模块,用于接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
第三方面,本发明实施例提供一种电子设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如第一方面任一项所述的方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如第一方面任一项所述的方法。
第五方面,本发明实施例提供一种程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面任一项所述的方法。
本发明实施例提供一种配置文件加载方法、装置及设备,所述方法应用于服务器,所述方法包括:在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件,所述方法通过在第三方jar包加载配置文件之前获取所需要的目标配置信息,并以预设要求存储为本地配置文件,无需人工手动处理配置文件,能够实现配置文件的自动化加载,提高jar包的运行效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的配置文件加载的应用场景示意图;
图2为本发明实施例提供的一种配置文件加载方法的流程示意图;
图3为本发明实施例提供的配置文件加载方法的原理图;
图4为本发明实施例提供的一种配置文件加载装置的结构示意图;
图5为本发明实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
图1为本发明实施例提供的配置文件加载的应用场景示意图,如图1所示,线上配置是指通过配置中心101对不同环境的配置文件进行管理,例如apollo(阿波罗),一种分布式配置中心。在配置中心101中包括多个命令空间,其中每个命令空间分别对应不同环境所需的配置文件。一个配置中心支持向多个服务器102提供配置文件。当服务器需要调用配置文件时,可以自动去配置中心获取配置文件并打包。无需在线下配置不同环境下的配置文件,也无需在服务器调用配置文件时手动选择该环境下的配置文件、打包并上传到服务器。
然而,当一个项目中包含预设第三方jar包时,由于该预设第三方jar包的特殊性,其要求在服务器的本地必须存储所需的配置文件,从而实现预设第三方jar包从本地加载该配置文件。但是,由于目前通过配置中心对所有项目的配置文件进行统一管理,本地不会再存储对应的配置文件,因此,对于运行包含预设第三方jar包的项目时,则无法实现自动化的加载配置文件,则会导致该项目的运行失败。
基于上述问题,本发明实施例提供的配置文件加载方法,通过在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息,再将获取的目标配置信息存储至服务器本地,以实现预设第三方jar包的自动化加载配置文件的过程,提高jar包的运行效率。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图2为本发明实施例提供的一种配置文件加载方法的流程示意图,如图2所示,所述方法包括:
S201、在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
S202、接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
在本实施例中,项目是指开发人员开发的能够实现某种功能的软件产品。项目是运行在服务器上的,根据用户需求的不同,可以将项目运行在不同类型的服务器上,如测试环境下,将项目运行在测试服务器上;在生产环境下,将项目运行在生产环境下。
在本实施例中,项目会依赖一些jar包,jar包是一种与平台无关的文件格式,可将多个文件合成一个文件,而第三方jar包则是由第三方编写的文件,通过调用第三方jar包可以实现该第三方jar包的方法。
本实施例中的预设第三方jar包的运行条件包括在服务器的本地上存储所述预设第三方jar包所需的本地配置文件(也就是本地properties文件)。因此,当在运行一个项目时,若该项目包含预设第三方jar包,则预设第三方jar包是从本地获取配置文件。
为了实现在运行包含第三方jar包的项目的过程中实现自动化,无需人工手动对配置文件进行处理,本申请通过在项目的预设第三方jar包加载本地配置文件之前,来向配置中心发送请求,来获取与该第三方jar包对应的目标配置信息。其中,在一个项目中预设第三方jar包的个数可以为一个或多个,因此需要在第一个预设第三方jar包加载本地配置文件之前实现从配置中心获取配置信息并生成本地配置文件的过程。
具体的,服务器会向配置中心发送请求信息,该请求信息用于获取与预设第三方jar包对应的目标配置信息,配置中心在接收到该请求信息时,会根据该请求信息确定目标配置信息,并发送给服务器,服务器在接收到目标配置信息后会将目标配置信息以本地配置文件的形式进行存储。具体的,可以通过重写contextInitialized方法来实现,方法所要实现的就是从配置中心获取目标配置信息,并写为本地配置文件。此外,在重写contextInitialized方法后,还需继续执行父类super.contextInitialized(event)方法,以实现继续执行项目中其他代码对应的内容。
在生成本地配置文件之后,在运行到项目中的预设第三方jar包加载配置文件时,会从该预第三方jar包要求的位置获取配置文件,并继续运行该项目。
下面以一个具体的例子说明本申请的使用场景。对于支付类公司,在完成一笔交易时,我方会进行结算,同时会收取商户的手续费,在收取手续费时需要给商户开发票,开发票时需要调取与开取发票相关部门的接口,也就是第三方jar包,该过程为向该相关部门发送请求,而该相关部门的使用文档注明需要使用指定位置的配置文件,也就是该第三方jar包要求从指定位置调取配置文件。其中,在使用文档中标注存储路径信息、文件名称信息和配置标识信息,如网络地址对应的配置标识信息。当在测试环境下要开发票时,需要在测试服务器上运行该项目,并通过本申请的方法从配置中心将测试环境下的网络地址存储为本地配置文件,则在测试服务器上运行该项目时,则会加载测试环境下的网络地址,开取测试环境下的发票。当在生产环境下要开取发票时,需要在生产服务器上运行该项目,并通过本申请的方法从配置中心将生产环境下的网络地址存储为本地配置文件,则在生产服务器上运行该项目时,则会加载生产环境下的网络地址,开取实际的发票。
本发明实施例提供的配置文件加载方法,通过在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件,通过上述方法可以将配置中心的配置信息存储到服务器本地,以实现在运行包含预设第三方jar包的项目时自动化加载配置文件,提高jar包的运行效率。
在一种实施方式中,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
通过监听器监听项目是否启动;所述监听器建立在所述项目中;当监听到包含预设第三方jar包的项目启动时,向所述配置中心发送请求信息。
在本实施例中,在一个项目中预设第三方jar包的个数时不确定的,需要在任意一个预设第三方jar包加载本地配置文件之前的某一时刻来执行向配置中心发送请求信息的步骤。为了满足这一条件,将该时刻确定为项目启动的时刻,即当项目启动时,则开始执行发送请求信息,可以满足所有的预设第三方jar包加载配置文件的需求。
具体的,通过在项目中设置监听器,监听器可以监听该项目是否启动,当监听到项目启动时,则执行发送请求信息的步骤。具体的,在项目中设置监听器的方法为:在项目中新建一个xxxListener类,该类需要继承ServletContextListener类,通过继承ServletContextListener类可以实现监听到项目启动。
此外,还需要在web.xml文件中配置监听器,该文件用于初始化配置信息,例如,<listener-class>com.unicompayment.cn.xxxListener</listener-class>,通过该语句即可实现在web.xml文件中配置监听器。
通过设置监听器来监听项目是否启动,并在项目启动时执行向配置中心发送请求信息的步骤,能够确保在项目中的预设第三方jar包加载本地配置文件之前,从配置中心获取目标配置信息并生成本地配置文件。
在一种实施方式中,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,包括:
获取与所述预设第三方jar包对应的存储路径信息和文件名称信息;将获取的所述目标配置信息加载至与所述存储路径信息对应的存储位置处的临时文件夹内,并根据所述文件名称信息修改所述临时文件夹的名称,得到满足要求的本地配置文件。
其中,当服务器在接收到目标配置文件后,需要将目标配置文件进行加载,得到满足要求的本地配置文件。其中,加载接收的配置信息的过程为将将配置信息以预设的名称存储至预设存储路径。其中,预设第三方jar包包含一个使用文档,在该使用文档中记录了对本地配置文件的存储要求,如本地配置文件的存储路径,本地配置文件的文件名称信息,因此,在加载所述目标配置信息,生成满足要求的本地配置文件时,需要先读取该预设第三方jar包的使用文档,获取存储路径信息和文件名称信息,再将获取的目标配置信息加载至与所述存储路径信息对应的位置处的临时文件夹内,并根据所述文件名称信息对所述临时文件夹的名称进行修改。
例如,对于一个预设第三方jar包,其要求本地配置文件以名称A将目标配置信息存储在D盘的临时文件夹内,则在获取到目标配置信息后,需要将目标配置信息存储在D盘的临时文件夹内,名称修改为名称A。
通过获取预设第三方jar包对路径信息和文件名称信息的要求,可以实现将获取的目标配置信息以预设的格式存储,满足预设第三方jar包对本地配置文件的要求。
在一种实施方式中,所述请求信息包括服务器类型和配置标识信息,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息,包括:
向配置中心发送包含服务器类型和配置标识信息的请求信息,以使所述配置中心根据所述服务器类型确定所述目标配置信息所在的存储空间,并根据所述配置标识信息确定所述目标配置信息。
在本实施例中,目标配置信息的确定过程需要依据服务器的类型和配置标识信息。图3为本发明实施例提供的配置文件加载方法的原理图,如图3所示,配置中心中分为不同的存储空间,如存储空间1和存储空间2,其中,不同的存储空间存储有不同环境下的配置信息。服务器的类型包括测试服务器和生产服务器,当需要对项目进行测试时,则将项目运行在测试服务器中。其中,测试服务器在向配置中心发送请求信息时,需要获取服务器的类型,通过服务器的类型可以确定项目所处的运行环境,进而使得配置中心可以确定目标配置信息所在的存储空间。
此外,服务器还需要向配置中心发送配置标识信息,以获取确定的存储空间中的目标配置信息,由于预设第三方jar包在运行时所需要的配置信息不是存储空间中存储的所有信息,而是其中的部分配置信息。由于配置中心中的配置信息以键值对的形式存储,即一个键值对应一个配置信息,因此,该配置标识信息可以为键值信息。其中,键值信息是从预设第三方jar包的使用文档中获取的。
例如,获取的配置信息可以为网络地址信息或超时时间,通过网络地址信息可以确定调用地址,根据超时信息可以在超过该超时信息对应的时间后,反馈超时提示信息。
对于配置中心来说,当获取到服务器的类型和配置标识信息时,则可以确定目标配置信息的存储空间和该存储空间中的目标配置信息。
通过发送服务器类型和配置标识信息可以使得配置中心确定目标配置信息,从而保证得到的本地配置文件为预设第三方jar包需要的本地配置文件。
在一种实施方式中,所述本地配置文件所属的文件夹为临时文件夹,在所述第三方jar包在运行时调用所述本地配置文件后,还包括:执行将所述临时文件夹清除的操作。
在本实施例中,为了满足预设第三方jar包的运行条件,可以在服务器上设置一个临时文件夹,用于存储本地配置文件,而当项目中的预设第三方jar包调用完毕所述本地配置文件后,可以将该临时文件夹清除,以避免在服务器上长时间存储本地配置文件,避免由于较多的本地配置文件导致的服务器卡顿,影响项目的运行。因此,在每次运行包含预设第三方jar包的项目时,需要实现从配置中心获取目标配置信息并加载所述目标配置信息,生成本地配置文件。
在一种实施方式中,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
检测所述项目中是否存在预设第三方jar包,若存在预设第三方jar包,则在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息。
具体的,检测预设第三方jar包的方法可以为:运行所述服务器上的项目,若运行所述项目的过程中出现错误提示信息,且该错误提示信息为预设第三方jar包未成功加载到配置文件,则可以确定该项目存在预设第三方jar包。
或者,还可以通过语句检测的方式,判断是否存在预设第三方jar包,例如,当检测到jar包的名称为预设名称时,则可以确定所述项目中存在预设第三方jar包。
通过上述方法可以准确判断项目中是否存在预设第三方jar包,无需人工判断是否包含预设第三方jar包。
图4为本发明实施例提供的一种配置文件加载装置的结构示意图。如图4所示,本实施例的配置文件加载装置40可以包括:发送模块401和处理模块402。
发送模块401,用于在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
处理模块402,用于接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
可选的,发送模块401具体用于:
通过监听器监听项目是否启动;所述监听器建立在所述项目中;
当监听到包含预设第三方jar包的项目启动时,向所述配置中心发送请求信息。
可选的,所述处理模块402在加载接收的所述目标配置信息,生成满足要求的本地配置文件时,具体用于:
获取与所述预设第三方jar包对应的存储路径信息和文件名称信息;
将获取的所述目标配置信息加载至与所述存储路径信息对应的存储位置处的临时文件夹内,并根据所述文件名称信息修改所述临时文件夹的名称,得到满足要求的本地配置文件。
可选的,所述发送模块401在向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息时,具体用于:
向配置中心发送包含服务器类型和配置标识信息的请求信息,以使所述配置中心根据所述服务器类型确定所述目标配置信息所在的存储空间,并根据所述配置标识信息确定所述目标配置信息。
可选的,所述本地配置文件所属的文件夹为临时文件夹,所述装置还包括:清除模块;
所述清除模块用于:在所述第三方jar包在运行时调用所述本地配置文件后,执行将所述临时文件夹清除的操作。
可选的,所述发送模块在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息时,具体用于:
向配置中心发送请求信息之前,检测所述项目中是否存在预设第三方jar包,若存在预设第三方jar包,则在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息。
本发明实施例提供的配置文件加载装置,可以实现上述如图2和图3、所示的实施例的配置文件加载方法,其实现原理和技术效果类似,此处不再赘述。
图5为本发明实施例提供的电子设备的硬件结构示意图。如图5所示,本实施例提供的电子设备50包括:至少一个处理器501和存储器502。其中,处理器501、存储器502通过总线503连接。
在具体实现过程中,至少一个处理器501执行所述存储器502存储的计算机执行指令,使得至少一个处理器501执行上述方法实施例中的配置文件加载方法。
处理器501的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述的图5所示的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述方法实施例的配置文件加载方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
本申请一个实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本申请图2和图3所对应的实施例中任意实施例提供的配置文件加载方法。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (10)
1.一种配置文件加载方法,其特征在于,应用于服务器,所述方法包括:
在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
2.根据权利要求1所述的方法,其特征在于,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
通过监听器监听项目是否启动;所述监听器建立在所述项目中;
当监听到包含预设第三方jar包的项目启动时,向所述配置中心发送请求信息。
3.根据权利要求1所述的方法,其特征在于,加载接收的所述目标配置信息,生成满足要求的本地配置文件,包括:
获取与所述预设第三方jar包对应的存储路径信息和文件名称信息;
将获取的所述目标配置信息加载至与所述存储路径信息对应的存储位置处的临时文件夹内,并根据所述文件名称信息修改所述临时文件夹的名称,得到满足要求的本地配置文件。
4.根据权利要求1所述的方法,其特征在于,所述请求信息包括服务器类型和配置标识信息,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息,包括:
向配置中心发送包含服务器类型和配置标识信息的请求信息,以使所述配置中心根据所述服务器类型确定所述目标配置信息所在的存储空间,并根据所述配置标识信息确定所述目标配置信息。
5.根据权利要求1所述的方法,其特征在于,所述本地配置文件所属的文件夹为临时文件夹,在所述第三方jar包在运行时调用所述本地配置文件后,还包括:执行将所述临时文件夹清除的操作。
6.根据权利要求1-5任一项所述的方法,其特征在于,在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,包括:
检测所述项目中是否存在预设第三方jar包,若存在预设第三方jar包,则在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息。
7.一种配置文件加载装置,其特征在于,所述装置包括:
发送模块,用于在项目中的预设第三方jar包加载本地配置文件之前,向配置中心发送请求信息,以使所述配置中心根据所述请求信息返回目标配置信息;所述项目运行在服务器上;
处理模块,用于接收所述目标配置信息,并加载接收的所述目标配置信息,生成满足要求的本地配置文件,以供所述第三方jar包在运行时调用所述本地配置文件。
8.一种电子设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1-6任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如权利要求1-6任一项所述的方法。
10.一种程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110651034.7A CN115469934A (zh) | 2021-06-10 | 2021-06-10 | 配置文件加载方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110651034.7A CN115469934A (zh) | 2021-06-10 | 2021-06-10 | 配置文件加载方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115469934A true CN115469934A (zh) | 2022-12-13 |
Family
ID=84363723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110651034.7A Pending CN115469934A (zh) | 2021-06-10 | 2021-06-10 | 配置文件加载方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115469934A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193886A (zh) * | 2023-11-06 | 2023-12-08 | 成都科江科技有限公司 | 一种工控系统配置文件的动态加载方法 |
-
2021
- 2021-06-10 CN CN202110651034.7A patent/CN115469934A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117193886A (zh) * | 2023-11-06 | 2023-12-08 | 成都科江科技有限公司 | 一种工控系统配置文件的动态加载方法 |
CN117193886B (zh) * | 2023-11-06 | 2024-01-05 | 成都科江科技有限公司 | 一种工控系统配置文件的动态加载方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20060271922A1 (en) | Bridging class loader name spaces | |
CN110825399B (zh) | 一种应用程序的部署方法及装置 | |
CN113050984A (zh) | 资源调取方法、装置、电子设备及存储介质 | |
CN107368330B (zh) | 客户端补丁修复方法、装置和系统 | |
CN111507676A (zh) | 业务订单流程创建和实现方法、装置、存储介质和系统 | |
CN114895935A (zh) | 刷写车辆ecu的方法、装置、电子设备及存储介质 | |
CN108089972B (zh) | 接口测试方法及装置 | |
CN115469934A (zh) | 配置文件加载方法、装置及设备 | |
US8244869B2 (en) | System and method for starting server services | |
CN112799778A (zh) | 一种容器应用启动方法、设备及介质 | |
EP4025994A1 (en) | Enhanced virtual machine image management system | |
CN111352631A (zh) | 一种接口兼容性检测方法及装置 | |
JP2009134379A (ja) | メモリ管理方法 | |
US20210382764A1 (en) | Comparisons of application programming interface interactions to determine compatibilities | |
CN113032100B (zh) | 一种异常处理方法、装置、设备及存储介质 | |
CN106778270B (zh) | 一种恶意应用程序的检测方法及系统 | |
CN113342660A (zh) | 文件测试方法、装置、系统、电子设备及可读存储介质 | |
CN114020513A (zh) | 一种处理日志信息的方法和装置 | |
CN111367796A (zh) | 应用程序调试方法及装置 | |
CN112965697A (zh) | 一种代码文件的生成方法、装置及电子设备 | |
CN116541253B (zh) | 应用的检测方法、系统、终端设备和可读存储介质 | |
CN111124931B (zh) | 一种Java代码合规性检查方法和装置 | |
CN111625463B (zh) | 一种程序状态检测方法和装置 | |
CN110427224B (zh) | 一种ejb模块加载方法、装置、服务器及可读存储介质 | |
CN111782282A (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 |