CN109582382A - 配置信息的加载方法、装置、存储介质及终端设备 - Google Patents
配置信息的加载方法、装置、存储介质及终端设备 Download PDFInfo
- Publication number
- CN109582382A CN109582382A CN201811198412.5A CN201811198412A CN109582382A CN 109582382 A CN109582382 A CN 109582382A CN 201811198412 A CN201811198412 A CN 201811198412A CN 109582382 A CN109582382 A CN 109582382A
- Authority
- CN
- China
- Prior art keywords
- configuration information
- business
- configuration
- class
- service component
- 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
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
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及应用开发领域,具体涉及一种配置信息的加载方法、装置、存储介质及终端设备,所述方法包括:在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。本发明能够提高业务加载配置参数的效率。
Description
技术领域
本发明涉及应用开发领域,具体涉及一种配置信息的加载方法、装置、存储介质及终端设备。
背景技术
随着互联网技术的发展,应用项目的开发越来越复杂,应用的功能也越来越丰富,每一项功能均对应有具体的业务,不同的业务在不同的发展时期需要不同的配置信息,而目前,对于各项业务所需的配置信息大多存储在同一属性文件中,各项业务若需要使用到配置信息时,直接从属性文件中获取,当多项业务同时从属性文件中获取配置信息时,出现排队现象,并且随着获取的次数增多,对于配置信息的获取效率逐步递减,造成业务的执行效率也不断下降,从而影响业务的正常运行。
发明内容
为克服以上技术问题,特别是现有技术无法高效地加载配置参数的问题,特提出以下技术方案:
第一方面,本发明提供了一种配置信息的加载方法,包括:
在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;
在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;
响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
进一步的,所述将所述配置信息写入至所述成员变量中之后,还包括:
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
进一步的,所述响应于业务的执行,匹配对应的业务组件,包括:
响应于新增业务的执行,判断所述新增业务的适用场景是否与已有的业务匹配,若是,从已有的业务中匹配相应的业务组件。
进一步的,所述将所述配置信息的配置参数应用到业务中之后,还包括:
判断所述配置参数是否符合当前业务的要求;
若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
进一步的,所述通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中之后,还包括:
判断所述相似业务的业务组件的成员变量获取的配置信息是否成功应用于当前业务中;
若是,增加当前业务与所述相似业务的业务场景相似度;
若否,降低当前业务与所述相似业务的业务场景相似度。
第二方面,本发明提供一种配置信息的加载装置,包括:
静态类配置模块:用于在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;
业务组件配置模块:用于在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;
加载模块:用于响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
进一步的,所述业务组件配置模块还包括执行;
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
进一步的,所述加载模块还包括执行:
判断所述配置参数是否符合当前业务的要求;
若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
第三方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述的配置信息的加载方法。
第四方面,本发明还提供了一种终端设备,所述终端设备包括一个或多个处理器、存储器、一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序配置用于执行上述的配置信息的加载方法。
本发明与现有技术相比,具有以下有益效果:
本发明提供了一种从业务的业务组件中加载业务所需的配置参数的方法,该方法应用于应用系统中,在应用系统中,配置静态类,在静态类中,配置用于读取属性文件中配置信息的方法函数,并将配置信息的配置参数在指定类型参数中存储;在每一个业务组件中,配置执行类,在执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;若业务开始执行,则匹配该业务对应的业务组件,加载该业务组件的执行类,根据所述执行类的实现逻辑,便可从执行类的成员变量中获取到业务所需的配置信息中的各项配置参数,不需要直接地从属性文件读取配置信息,避免由于属性文件中存储的是多项业务的配置信息,直接从属性文件中读取配置信息需要消耗大量的终端资源,并且随着读取的次数增多,配置信息的读取效率、加载效率逐步递减的问题,从而加快业务对于所需的配置参数的读取效率,加快业务的执行。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明配置信息的加载方法的一实施例流程示意图;
图2为本发明配置信息的加载方法的另一实施例流程示意图;
图3为本发明配置信息的加载装置的一实施例示意图;
图4为本发明终端设备的一实施例结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本领域技术人员应当理解,本发明所称的“应用”、“应用程序”、“计算机程序”以及类似表述的概念,是业内技术人员所公知的相同概念,是指由一系列计算机指令及相关数据资源有机构造的适于电子运行的计算机软件。除非特别指定,这种命名本身不受编程语言种类、级别,也不受其赖以运行的操作系统或平台所限制。理所当然地,此类概念也不受任何形式的终端所限制。
本发明实施例提供一种配置信息的加载方法,应用于项目开发的应用系统中,如图1所示,所述方法包括以下步骤:
S10:在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储。
本实施例应用于基于Spring框架开发的应用系统,应用系统将可配置的定制信息存放在指定的属性文件中,例如数据库的连接信息,邮件发送配置信息等,本步骤中,在基于Spring框架开发的应用系统中,创建一个静态类,所述静态类中配置有用于读取属性文件中的配置信息的方法函数,所述配置信息中包含了不同业务组件所需的配置参数,通过所述方法函数读取配置信息,并将配置信息中包含的各业务组件的配置参数通过特定的字符串/变量进行互换,将配置参数在指定类型参数中存储。具体的,在所述方法函数中通过文件名查找对应的属性文件,然后读取该属性文件的配置信息,获取配置信息中的各项业务组件的配置参数,然后将配置参数返回给指定类型(Properties类型)参数,在Properties类型参数中存储所述配置参数。具体的,在静态类中,通过如下步骤将配置参数在指定类型参数中存储:
1)使用springframework的util包中的ClassUtils类配置方法函数,方法函数根据属性文件名,将属性文件中的配置信息读入输入流is;
2)然后将输入流is转换为字符串s;
3)使用字符串s实例一个StringReader类型对象sr,并通过Properties类的load方法将sr转换为Properties类型的变量,并返回该变量值。
S20:在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中。
不同的业务都具有不同的业务组件,在不同的业务组件(bean)中,配置一个执行类C,并在执行类C中声明一个成员变量V,所述成员变量V的类型与存储配置参数的类型相同,能将所述配置参数写入到所述成员变量中而不需要变更数据类型,在所述业务组件中配置所述执行类C实现加载所述静态类,并且调用静态类中的方法函数读取属性文件中的配置信息,然后将读取到的配置信息中的配置参数写入到所述成员变量中,由于不同业务组件所需的配置参数不同,在不同业务组件中便不需要完全加载所述属性文件的所有配置参数,只需要在不同业务组件中声明不同的成员变量以获取所需的配置参数即可。
S30:响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
响应于业务的执行,匹配该业务对应的业务组件,由于业务组件中已配置有执行类,通过所述执行类加载所述静态类后实现将配置信息中的配置参数写入至该业务组件中的成员变量,然后从成员变量中便可获取到相应的配置信息的配置参数,将所述配置参数应用到实际的业务中。当业务组件中的成员变量中存储有属性文件的配置信息时,此时若业务开始执行,则加载该业务组件的执行类,然后从成员变量中便可获取到所需的配置信息中的各个配置参数,不需要再去读取属性文件,从而加快配置参数的读取。
本实施例提供了一种从业务的业务组件中加载业务所需的配置参数的方法,该方法应用于应用系统中,在应用系统中,配置静态类,在静态类中,配置用于读取属性文件中配置信息的方法函数,并将配置信息的配置参数在指定类型参数中存储;在每一个业务组件中,配置执行类,在执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;若业务开始执行,则匹配该业务对应的业务组件,加载该业务组件的执行类,根据所述执行类的实现逻辑,便可从执行类的成员变量中获取到业务所需的配置信息中的各项配置参数,不需要直接地从属性文件读取配置信息,避免由于属性文件中存储的是多项业务的配置信息,直接从属性文件中读取配置信息需要消耗大量的终端资源,并且随着读取的次数增多,配置信息的读取效率、加载效率逐步递减的问题,从而加快业务对于所需的配置参数的读取效率,加快业务的执行。
本发明的一种实施例,所述将所述配置信息写入至所述成员变量中之后,还包括:
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
每一个业务组件的成员变量中存储了该业务组件所需的配置信息后,为了保证业务组件的成员变量存储的配置信息实时更新,在将配置信息写入到成员变量中后,需要按照预定逻辑监控配置信息的变化,即监控属性文件的变化,本实施例的一种实施方式,若所述属性文件的内容发送变化,无论是否涉及到配置信息的变化,均会向各业务组件广播,各业务组件若接收到广播即监控到属性文件的变化,便重新在执行类中加载所述静态类,调用静态类中的方法函数读取属性文件最新的配置信息,然后将新的配置信息写入成员变量中;本实施例的另一种实施方式,各业务组件按照预设时间间隔监控属性文件,例如各业务组件按照每小时/次的频率监控属性文件,若属性文件发送变化,则重新在执行类中加载所述静态类,调用静态类中的方法函数读取属性文件最新的配置信息,然后将新的配置信息写入成员变量中,若无变化,则不需重新执行所述执行类。
本发明的一种实施例,所述响应于业务的执行,匹配对应的业务组件,包括:
响应于新增业务的执行,判断所述新增业务的适用场景是否与已有的业务匹配,若是,从已有的业务中匹配相应的业务组件。
本实施例中,不同的业务组件可供具有同样适用场景的其它业务调用,在响应于业务的执行时,判断该业务是否为新增的业务,若是,则获取所述新增业务,然后判断所述新增业务的适用场景是否与已有的业务匹配,若是,从已有的业务中匹配相应的业务组件,后续再从该匹配的业务组件的成员变量中获取到新增的业务所需的配置参数,加快新增业务的配置参数的读取,降低配置参数的获取难度。
本发明的一种实施例,如图2所示,所述将所述配置信息的配置参数应用到业务中之后,还包括:
S41:判断所述配置参数是否符合当前业务的要求;
S42:若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
本实施例中,在将配置参数应用至当前业务中后,需要判断配置参数是否符合当前业务的要求,以保证实际业务的正常运行,当所述配置参数无法满足实际业务的要求时,根据业务场景的相似度获取相似业务的业务组件,例如应用系统中包括业务A、业务B、业务C、业务D及其对应的业务组件,业务A与业务B、业务C、业务D的相似度分别为7、4、8,当业务A从其业务组件的成员变量中获取的配置参数无法满足业务A的要求时,根据业务场景的相似度获取业务A的相似业务(即业务D)的业务组件,通过业务D的业务组件的成员变量获取相应的配置信息,然后将所述配置信息的配置参数应用到业务A中。当当前业务的业务组件的配置参数无法正常完成作业时,根据业务场景的相似度匹配其它业务的业务组件,从而保证当前业务能够正常运行。
本发明的一种实施例,所述通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中之后,还包括:
判断所述相似业务的业务组件的成员变量获取的配置信息是否成功应用于当前业务中;
若是,增加当前业务与所述相似业务的业务场景相似度;
若否,降低当前业务与所述相似业务的业务场景相似度。
由于实际业务是不断变化的,业务属性亦会不断变化,业务间的业务场景相似度亦不断变化,本实施例中,在通过相似业务的业务组件的成员变量获取相应的配置信息并将所述配置信息的配置参数应用到当前业务中之后,判断所述相似业务的业务组件的成员变量获取的配置信息是否成功应用于当前业务中,若是,则说明当前业务跟该相似业务的相似度仍旧接近,可以适当增加当前业务与所述相似业务的业务场景相似度;若否,则说明当前业务与该相似业务的相似度已不再接近,可能是当前业务已作修改或相似业务已作修改,此时,降低当前业务与所述相似业务的业务场景相似度。例如,业务A与业务B、业务C、业务D的相似度分别为7、4、8,当业务A进行修改后,实际中业务A与业务B、业务C、业务D的相似度变更为8、3、6,适当修改业务间业务唱将的相似度可以保证下一次获取的相似业务更为接近,相似业务的业务组件的成员变量获取相应的配置信息的可用性更高。
如图3所示,在另一种实施例中,本发明提供了一种配置信息的加载装置,包括:
静态类配置模块10:用于在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;
业务组件配置模块20:用于在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;
加载模块30:用于响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
本发明的一种实施例,所述业务组件配置模块20还包括执行;
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
本发明的一种实施例,所述加载模块30执行响应于业务的执行,匹配对应的业务组件,包括:
响应于新增业务的执行,判断所述新增业务的适用场景是否与已有的业务匹配,若是,从已有的业务中匹配相应的业务组件。
本发明的一种实施例,所述加载模块30还包括执行:
判断所述配置参数是否符合当前业务的要求;
若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
本发明的一种实施例,所述加载模块30还包括执行:
判断所述相似业务的业务组件的成员变量获取的配置信息是否成功应用于当前业务中;
若是,增加当前业务与所述相似业务的业务场景相似度;
若否,降低当前业务与所述相似业务的业务场景相似度。
在另一种实施例中,本发明提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例所述的配置信息的加载方法。其中,所述计算机可读存储介质包括但不限于任何类型的盘(包括软盘、硬盘、光盘、CD-ROM、和磁光盘)、ROM(Read-Only Memory,只读存储器)、RAM(Random AcceSSMemory,随即存储器)、EPROM(EraSable Programmable Read-Only Memory,可擦写可编程只读存储器)、EEPROM(Electrically EraSable Programmable Read-Only Memory,电可擦可编程只读存储器)、闪存、磁性卡片或光线卡片。也就是,存储设备包括由设备(例如,计算机、手机)以能够读的形式存储或传输信息的任何介质,可以是只读存储器,磁盘或光盘等。
本发明实施例提供的一种计算机可读存储介质,可实现在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。通过提供一种从业务的业务组件中加载业务所需的配置参数的方法,该方法应用于应用系统中,在应用系统中,配置静态类,在静态类中,配置用于读取属性文件中配置信息的方法函数,并将配置信息的配置参数在指定类型参数中存储;在每一个业务组件中,配置执行类,在执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;若业务开始执行,则匹配该业务对应的业务组件,加载该业务组件的执行类,根据所述执行类的实现逻辑,便可从执行类的成员变量中获取到业务所需的配置信息中的各项配置参数,不需要直接地从属性文件读取配置信息,避免由于属性文件中存储的是多项业务的配置信息,直接从属性文件中读取配置信息需要消耗大量的终端资源,并且随着读取的次数增多,配置信息的读取效率、加载效率逐步递减的问题,从而加快业务对于所需的配置参数的读取效率,加快业务的执行。
本发明实施例提供的计算机可读存储介质可以实现上述配置信息的加载方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。
此外,在又一种实施例中,本发明还提供一种终端设备,如图4所示,所述终端设备包括处理器403、存储器405、输入单元407以及显示单元409等器件。本领域技术人员可以理解,图4示出的结构器件并不构成对所有终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件。所述存储器405可用于存储计算机程序401以及各功能模块,所述处理器403运行存储在存储器405的计算机程序401,从而执行设备的各种功能应用以及数据处理。所述存储器405可以是内存储器或外存储器,或者包括内存储器和外存储器两者。内存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦写可编程ROM(EEPROM)、快闪存储器、或者随机存储器。外存储器可以包括硬盘、软盘、ZIP盘、U盘、磁带等。本发明所公开的存储器包括但不限于这些类型的存储器。本发明所公开的存储器405只作为例子而非作为限定。
输入单元407用于接收信号的输入及接收用户的输入,输入单元407可包括触控面板以及其它输入设备,触控面板可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板上或在触控面板附近的操作),并根据预先设定的程序驱动相应的连接装置;其它输入设备可以包括但不限于物理键盘、功能键(比如播放控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元409可用于显示用户输入的信息或提供给用户的信息以及计算机设备的各种菜单。显示单元409可采用液晶显示器、有机发光二极管等形式。处理器403是计算机设备的控制中心,利用各种接口和线路连接整个电脑的各个部分,通过运行或执行存储在存储器403内的软件程序和/或模块,以及调用存储在存储器内的数据,执行各种功能和处理数据。
在一种实施方式中,所述终端设备包括一个或多个处理器403,以及一个或多个存储器405,一个或多个计算机程序401,其中所述一个或多个计算机程序401被存储在存储器405中并被配置为由所述一个或多个处理器403执行,所述一个或多个计算机程序401配置用于执行以上实施例所述的配置信息的加载方法。图4中所示的一个或多个处理器403能够执行、实现图3中所示的静态类配置模块10、业务组件配置模块20、加载模块30的功能。
本发明实施例提供的一种终端设备,可实现在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。通过提供一种从业务的业务组件中加载业务所需的配置参数的方法,该方法应用于应用系统中,在应用系统中,配置静态类,在静态类中,配置用于读取属性文件中配置信息的方法函数,并将配置信息的配置参数在指定类型参数中存储;在每一个业务组件中,配置执行类,在执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;若业务开始执行,则匹配该业务对应的业务组件,加载该业务组件的执行类,根据所述执行类的实现逻辑,便可从执行类的成员变量中获取到业务所需的配置信息中的各项配置参数,不需要直接地从属性文件读取配置信息,避免由于属性文件中存储的是多项业务的配置信息,直接从属性文件中读取配置信息需要消耗大量的终端资源,并且随着读取的次数增多,配置信息的读取效率、加载效率逐步递减的问题,从而加快业务对于所需的配置参数的读取效率,加快业务的执行。
本发明实施例提供的终端设备可以实现上述提供的配置信息的加载方法的实施例,具体功能实现请参见方法实施例中的说明,在此不再赘述。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (10)
1.一种配置信息的加载方法,其特征在于,包括:
在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;
在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;
响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
2.根据权利要求1所述的方法,其特征在于,所述将所述配置信息写入至所述成员变量中之后,还包括:
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
3.根据权利要求1所述的方法,其特征在于,所述响应于业务的执行,匹配对应的业务组件,包括:
响应于新增业务的执行,判断所述新增业务的适用场景是否与已有的业务匹配,若是,从已有的业务中匹配相应的业务组件。
4.根据权利要求1所述的方法,其特征在于,所述将所述配置信息的配置参数应用到业务中之后,还包括:
判断所述配置参数是否符合当前业务的要求;
若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
5.根据权利要求4所述的方法,其特征在于,所述通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中之后,还包括:
判断所述相似业务的业务组件的成员变量获取的配置信息是否成功应用于当前业务中;
若是,增加当前业务与所述相似业务的业务场景相似度;
若否,降低当前业务与所述相似业务的业务场景相似度。
6.一种配置信息的加载装置,其特征在于,包括:
静态类配置模块:用于在静态类中,配置用于读取属性文件中配置信息的方法函数,所述方法函数通过文件名读取属性文件的配置信息,并将配置信息的配置参数在指定类型参数中存储;
业务组件配置模块:用于在业务组件中,配置执行类,所述执行类中声明与所述指定类型参数相同类型的成员变量,配置所述执行类加载所述静态类后调用所述静态类中的方法函数读取所述属性文件中的配置信息,并将所述配置信息写入至所述成员变量中;
加载模块:用于响应于业务的执行,匹配对应的业务组件,通过所述业务组件的所述成员变量获取相应的配置信息,将所述配置信息的配置参数应用到业务中。
7.根据权利要求6所述的装置,其特征在于,所述业务组件配置模块还包括执行;
监控属性文件的变化;
当属性文件发生变化时,重新执行所述执行类,以更改成员变量中的配置信息。
8.根据权利要求6所述的装置,其特征在于,所述加载模块还包括执行:
判断所述配置参数是否符合当前业务的要求;
若否,根据业务场景的相似度获取相似业务的业务组件,通过所述相似业务的业务组件的成员变量获取相应的配置信息,将所述配置信息的配置参数应用到当前业务中。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现权利要求1至5任一项所述的配置信息的加载方法。
10.一种终端设备,其特征在于,包括:
一个或多个处理器;
存储器;
一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个计算机程序配置用于执行根据权利要求1至5任一项所述的配置信息的加载方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811198412.5A CN109582382B (zh) | 2018-10-15 | 2018-10-15 | 配置信息的加载方法、装置、存储介质及终端设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811198412.5A CN109582382B (zh) | 2018-10-15 | 2018-10-15 | 配置信息的加载方法、装置、存储介质及终端设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109582382A true CN109582382A (zh) | 2019-04-05 |
CN109582382B CN109582382B (zh) | 2023-02-03 |
Family
ID=65920043
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811198412.5A Active CN109582382B (zh) | 2018-10-15 | 2018-10-15 | 配置信息的加载方法、装置、存储介质及终端设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109582382B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175020A (zh) * | 2019-04-10 | 2019-08-27 | 阿里巴巴集团控股有限公司 | 框架属性信息扩展方法和装置、框架加载方法和装置 |
CN111240727A (zh) * | 2020-01-06 | 2020-06-05 | 网易(杭州)网络有限公司 | 一种信息更新方法和装置 |
CN112990769A (zh) * | 2021-04-21 | 2021-06-18 | 北京宇信科技集团股份有限公司 | 业务处理方法、装置、电子设备和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040194053A1 (en) * | 2001-06-27 | 2004-09-30 | Bonsma Erwin R | Configuration file processing |
US20060143146A1 (en) * | 2004-12-27 | 2006-06-29 | International Business Machines Corporation | Dynamic configuration files |
US20100037101A1 (en) * | 2008-07-15 | 2010-02-11 | A VIcode, Inc. | Exposing application performance counters for .net applications through code instrumentation |
CN102141919A (zh) * | 2010-01-28 | 2011-08-03 | 北京邮电大学 | 模块化java应用软件在线更新系统及方法 |
CN102231162A (zh) * | 2011-07-01 | 2011-11-02 | 福建富士通信息软件有限公司 | 基于业务处理的规则引擎动态配置方法 |
US20120054727A1 (en) * | 2010-08-30 | 2012-03-01 | International Business Machines Corporation | System and method for updating hard-coded dependencies |
-
2018
- 2018-10-15 CN CN201811198412.5A patent/CN109582382B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040194053A1 (en) * | 2001-06-27 | 2004-09-30 | Bonsma Erwin R | Configuration file processing |
US20060143146A1 (en) * | 2004-12-27 | 2006-06-29 | International Business Machines Corporation | Dynamic configuration files |
US20100037101A1 (en) * | 2008-07-15 | 2010-02-11 | A VIcode, Inc. | Exposing application performance counters for .net applications through code instrumentation |
CN102141919A (zh) * | 2010-01-28 | 2011-08-03 | 北京邮电大学 | 模块化java应用软件在线更新系统及方法 |
US20120054727A1 (en) * | 2010-08-30 | 2012-03-01 | International Business Machines Corporation | System and method for updating hard-coded dependencies |
CN102231162A (zh) * | 2011-07-01 | 2011-11-02 | 福建富士通信息软件有限公司 | 基于业务处理的规则引擎动态配置方法 |
Non-Patent Citations (2)
Title |
---|
罗先贤: "数据仓库在城市公共建筑能耗管理中的应用", 《计算机应用》 * |
陈茜 等: "一种大数据分析组件的自动化开发集成方法", 《计算机应用与软件》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110175020A (zh) * | 2019-04-10 | 2019-08-27 | 阿里巴巴集团控股有限公司 | 框架属性信息扩展方法和装置、框架加载方法和装置 |
CN110175020B (zh) * | 2019-04-10 | 2023-08-22 | 创新先进技术有限公司 | 框架属性信息扩展方法和装置、框架加载方法和装置 |
CN111240727A (zh) * | 2020-01-06 | 2020-06-05 | 网易(杭州)网络有限公司 | 一种信息更新方法和装置 |
CN111240727B (zh) * | 2020-01-06 | 2023-05-05 | 网易(杭州)网络有限公司 | 一种信息更新方法和装置 |
CN112990769A (zh) * | 2021-04-21 | 2021-06-18 | 北京宇信科技集团股份有限公司 | 业务处理方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109582382B (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106233252B (zh) | 用于定制软件的动态更新安装器 | |
CN111767090B (zh) | 小程序的启动方法、装置、电子设备以及存储介质 | |
CN110221901A (zh) | 容器资源创建方法、装置、设备及计算机可读存储介质 | |
CN108549568B (zh) | 应用入口处理方法、装置、存储介质及电子设备 | |
CN111708520B (zh) | 应用构建方法、装置、电子设备及存储介质 | |
CN109582382A (zh) | 配置信息的加载方法、装置、存储介质及终端设备 | |
CN109408136A (zh) | 信息处理方法、装置、存储介质及电子设备 | |
CN104067276A (zh) | 客户机侧最小下载和模拟的页面导航特征 | |
US20130117719A1 (en) | Context-Based Adaptation for Business Applications | |
US9633055B2 (en) | Database migration | |
US11256603B2 (en) | Generating and attributing unique identifiers representing performance issues within a call stack | |
CN113434063B (zh) | 一种信息显示方法、装置及设备 | |
CN111178846B (zh) | 一种工作流文件生成方法、装置、设备及存储介质 | |
EP3627313B1 (en) | Method and system for operating a software application on a processor of a mobile device | |
CN112148625A (zh) | 业务逻辑调试方法、装置、设备及计算机可读存储介质 | |
CN105320523B (zh) | 一种数据处理方法和装置 | |
WO2022206295A1 (en) | Program context migration | |
CN109901822A (zh) | 对象互转方法、装置及存储介质、服务器 | |
CN113778542B (zh) | 业务配置表生成方法和装置 | |
CN113382310B (zh) | 信息推荐方法及装置、电子设备和介质 | |
CN114661274A (zh) | 用于生成智能合约的方法和装置 | |
CN108427599A (zh) | 异步任务统一处理方法、装置及存储介质 | |
CN112891949B (zh) | 一种标签界面的实现方法和装置 | |
CN111611582B (zh) | 用于识别页面劫持行为的方法和装置 | |
US11914498B2 (en) | Selective induction of binary code at run-time for web-based customer service |
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 |