CN110471708B - 基于可重用组件的配置项获取的方法及装置 - Google Patents
基于可重用组件的配置项获取的方法及装置 Download PDFInfo
- Publication number
- CN110471708B CN110471708B CN201910630660.0A CN201910630660A CN110471708B CN 110471708 B CN110471708 B CN 110471708B CN 201910630660 A CN201910630660 A CN 201910630660A CN 110471708 B CN110471708 B CN 110471708B
- Authority
- CN
- China
- Prior art keywords
- configuration item
- attribute
- configuration
- class
- dynamic
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 81
- 238000010801 machine learning Methods 0.000 claims description 27
- 238000012549 training Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 description 7
- 238000013461 design Methods 0.000 description 5
- 235000006719 Cassia obtusifolia Nutrition 0.000 description 4
- 235000014552 Cassia tora Nutrition 0.000 description 4
- 244000201986 Cassia tora Species 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 239000013307 optical fiber Substances 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- 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
- G06F9/44526—Plug-ins; Add-ons
Abstract
本公开是关于一种基于可重用组件的配置项获取的方法及装置,属于计算机技术领域,该方法包括:根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;读取所述配置项属性添加标签的动态配置项到可重用组件;当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。本公开通过为动态配置项自动添加标签,基于可重用组件有效提高了动态配置项获取的效率。
Description
技术领域
本公开涉及测试技术领域,具体而言,涉及一种基于可重用组件的配置项获取的方法及装置。
背景技术
Java中有个类Properties(Java.util.Properties),主要用于读取Java的配置文件,将一些可能需要变化的值存放在properties中进行配置,通常为“.properties”文件,文件的内容的格式是“键=值”的格式。
目前,配置项的获取通常是将配置项首先存储在Properties,然后通过关键字查询对应的配置项,也就是通过关联容器map中的键-值对应关系进行查询,但是随着系统的迭代,配置项也越来越多,配置项以及与其对应的关键字也越来越多,通过关联容器map中的键-值对应关系进行查询则查询效率会越来越慢,进而使得系统接口获取配置项的效率非常低。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种基于可重用组件的配置项获取的方案,进而至少在一定程度上保证配置项获取的准确性的基础上,有效提高配置项获取的效率。
根据本公开的一个方面,提供一种基于可重用组件的配置项获取的方法,其特征在于,包括:
根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;
读取所述配置项属性添加标签的动态配置项到可重用组件;
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
在本公开的一种示例性实施例中,所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性,包括:
获取根据所述动态配置项的业务内容事先添加的业务标识;
根据所述业务标识为所述动态配置项建立配置类,所述配置类至少包括配置项属性。
在本公开的一种示例性实施例中,所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性,包括:
将业务内容为属于同一业务的动态配置项分为同一类,建立配置类;
为所述配置类中的所有所述动态配置项分别建立配置项属性。
在本公开的一种示例性实施例中,所述为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项,包括:
获取所述动态配置项对应的配置类的类属性;
获取所述动态配置项的配置项属性;
根据所述类属性和配置项属性为所述动态配置项的配置项属性添加标签。
在本公开的一种示例性实施例中,所述根据所述类属性和配置项属性为所述动态配置项的配置项属性添加标签,包括:
将所述类属性和配置项属性的作为输入数据输入预先训练好的机器学习模型,得到为所述动态配置项的配置项属性添加的标签。
在本公开的一种示例性实施例中,所述机器学习模型的训练方法包括:
收集动态配置项的类属性和配置项属性的样本组集,所述样本组集中每个样本组事先根据样本组中类属性和配置项属性之间的关联关系标定配置项属性的标签;
将所述样本组集中每个样本组的作为输入数据输入机器学习模型,得到按照每个样本组中类属性和配置项属性的关联关系对配置项属性标定的标签;
如果存在有样本组的数据输入机器学习模型后,得到的配置项属性的标签与对样本组事先标定的配置项属性的标签不一致,则调整机器学习模型的系数,直到一致;
当所有的样本组的数据输入机器学习模型后,得到的配置项属性的标签与对每个样本组事先标定的配置项属性的标签一致,训练结束。
在本公开的一种示例性实施例中,所述读取所述配置项属性添加标签的动态配置项到可重用组件,包括:
根据所述配置项属性添加标签的动态配置项之间的关联关系,将关联关系为需共同调用的动态配置项保存为配置项集合;
将所述配置项集合读取到可重用组件。
在本公开的一种示例性实施例中,所述当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项,包括:
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签查找所述目标配置项的配置项属性对应的获取方法;
若根据所述属性标签查找到所述目标配置项的配置项属性对应的获取方法,返回所述配置项属性对应的配置项。
在本公开的一种示例性实施例中,所述当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签查找所述目标配置项的配置项属性对应的获取方法,包括:
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签获取所述属性标签对应的属性的描述器;
利用所述属性的描述器获取所述属性标签对应的属性的属性值的获取方法,作为所述目标配置项的配置项属性对应的获取方法。
在本公开的一种示例性实施例中,在所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性之前,所述方法还包括:
接收用户上传的动态配置项,所述动态配置项根据所述动态配置项的业务内容添加了业务标识。
根据本公开的一个方面,提供一种基于可重用组件的配置项获取的装置,其特征在于,包括:
建立模块,用于根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
添加模块,用于为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;
读取模块,用于读取所述配置项属性添加标签的动态配置项到可重用组件;
获取模块,用于当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有基于可重用组件的配置项获取的程序,其特征在于,所述基于可重用组件的配置项获取的程序被处理器执行时实现上述任一项所述的方法。
根据本公开的一个方面,提供一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的基于可重用组件的配置项获取的程序;其中,所述处理器配置为经由执行所述基于可重用组件的配置项获取的程序来执行上述任一项所述的方法。
本公开一种基于可重用组件的配置项获取的方法及装置,首先,根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;即通过根据具有相同属性的动态配置项,也就是相同业务内容的动态配置项,建立动态配置项的集合得到配置类;同时,配置类中包括每个动态配置项的个性化业务内容对应的配置项属性;这样可以在后续步骤中方便准确的根据业务内容调用每个动态配置项。然后,为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;通常类中的属性是私有的,不可以被其它类或者方法调用,通过为配置项属性添加标签,可以在后续步骤中通过标签暴露出配置类中的每个配置项属性,同时准确的实现每个配置项属性的获取。然后,读取所述配置项属性添加标签的动态配置项到可重用组件;这样可以通过配置项属性的标签,基于可重用组件的一致性设计模式的公共方法将内部域暴露成员属性,进而供其他类调用成员属性,也就是配置项属性。当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项;根据获取指令中携带的属性标签可以直接、准确、高效地从可重用组件中获取到与该属性标签一致的配置项属性的标签对应的配置项属性的获取方法,进而获取到目标配置项,有效避免了直接从关联容器中获取配置项效率变慢的问题,提高了每个使用动态配置的接口的效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出一种基于可重用组件的配置项获取的方法的流程图。
图2示意性示出一种基于可重用组件的配置项获取的方法的应用场景示例图。
图3示意性示出一种为配置项属性添加标签方法流程图。
图4示意性示出一种基于可重用组件的配置项获取的装置的方框图。
图5示意性示出一种用于实现上述基于可重用组件的配置项获取的方法的电子设备示例框图。
图6示意性示出一种用于实现上述基于可重用组件的配置项获取的方法的计算机可读存储介质。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了基于可重用组件的配置项获取的方法,该基于可重用组件的配置项获取的方法可以运行于的服务器,也可以运行于服务器集群或云服务器等,当然,本领域技术人员也可以根据需求在其他平台运行本发明的方法,本示例性实施例中对此不做特殊限定。参考图1所示,该基于可重用组件的配置项获取的方法可以包括以下步骤:
步骤S110,根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
步骤S120,为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;
步骤S130,读取所述配置项属性添加标签的动态配置项到可重用组件;
步骤S140,当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
上述基于可重用组件的配置项获取的方法中,根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;即通过根据具有相同属性的动态配置项,也就是相同业务内容的动态配置项,建立动态配置项的集合得到配置类;同时,配置类中包括每个动态配置项的个性化业务内容对应的配置项属性;这样可以在后续步骤中方便准确的根据业务内容调用每个动态配置项。然后,为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;通常类中的属性是私有的,不可以被其它类或者方法调用,通过为配置项属性添加标签,可以在后续步骤中通过标签暴露出配置类中的每个配置项属性,同时准确的实现每个配置项属性的获取。然后,读取所述配置项属性添加标签的动态配置项到可重用组件;这样可以通过配置项属性的标签,基于可重用组件的一致性设计模式的公共方法将内部域暴露成员属性,进而供其他类调用成员属性,也就是配置项属性。当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项;根据获取指令中携带的属性标签可以直接、准确、高效地从可重用组件中获取到与该属性标签一致的配置项属性的标签对应的配置项属性的获取方法,进而获取到目标配置项,有效避免了直接从关联容器中获取配置项效率变慢的问题,提高了每个使用动态配置的接口的效率。
下面,将结合附图对本示例实施方式中上述自动为修改代码推送测试用例的方法中的各步骤进行详细的解释以及说明。
在步骤S110中,根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性。
在本示例的实施方式中,参考图2所示,服务器201从服务器202上获取用户上传的动态配置项,根据动态配置项的业务内容为动态配置项建立配置类,配置类至少包括配置项属性。其中,服务器201可以是任何具有执行程序指令的终端,例如手机、电脑等;服务器202可以是任何具有应用系统执行、存储功能的终端,例如手机、电脑等。
配置项是指完成某项业务所需要的要素,例如,完成一个程序的运行过程需要调用很多的模块,这些模块可以就是这个程序的配置项;其中,不同的模块,也就是配置项可以用于完成不同的业务,同时,好几个模块可以用于完成同一个业务。
动态配置项就是用户自定义的或者更新、调整的配置项。
根据动态配置项的业务内容为所述动态配置项建立配置类,其中,配置类就是具有相同属性的配置项的集合,这个属性就是配置类的属性,例如,完成同一个业务的几个模块就具有相同的属性;业务内容可以准确的反映配置项的属性,所以根据配置项的业务内容就可以为动态配置项建立配置类,建立配置类就是例如建立Class文件。配置类中包含类属性相同的多个模块,每个模块,也就是配置项有具有自己独有的功能,也就是配置项属性,所以,在配置类中建立每个配置项的配置项属性。这样可以在后续步骤中方便准确的根据业务内容调用每个动态配置项。
在本示例的一种实施方式中,所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性,包括:
获取根据所述动态配置项的业务内容事先添加的业务标识;
根据所述业务标识为所述动态配置项建立配置类,所述配置类至少包括配置项属性。
业务标识就是根据动态配置项的业务内容添加的例如业务码或者业务名的标识。用户在上传动态配置项时可以根据业务内容对照标准的业务标识表进行选定。其中业务标识可以包括主标识和子标识,主标识根据业务内容的预定主业务内容添加,子标识根据每个动态配置项的业务内容预设子业务内容添加。主标识可以用于动态配置项的类属性的建立,子标识可以用于配置项属性的建立。根据预设的业务标识表结合业务内容,可以准确地为动态配置项添加业务标识。
通过获取根据动态配置项的业务内容事先添加的业务标识;可以准确、高效地根据业务标识为动态配置项建立配置类,配置类至少包括配置项属性。例如,将主标识相同的动态配置项归为同一类,进而建立配置类,然后根据子标识为每个动态配置项建立配置项属性,得到配置类中的配置项属性。
在本示例的一种实施方式中,所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性,包括:
将业务内容为属于同一业务的动态配置项分为同一类,建立配置类;
为所述配置类中的所有所述动态配置项分别建立配置项属性。
业务内容属于同一业务的配置项具有相同的类属性,分为同一类就可以建立配置类;可以根据动态配置项上传时添加的业务标识判断业务内容属于同一类的动态配置项,例如根据业务标识表进行查找属于同一类的业务,进而可以准确地将业务内容为属于同一业务的动态配置项分为同一类,建立配置类。然后,为配置类中配置项建立配置项属性,也可以同时建立配置项属性的获取方法,这样就可以将同一类属性下的配置项,根据配置项自身个性化业务建立配置项属性,与其他配置项相区分,进而在后续步骤中实现配置项属性准确地调用。
在步骤S120中,为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项。
在本示例的实施方式中,在一个类中,属性一般是私有的,无法被其它的类或者方法调用,通过给配置项属性添加标签,该标签是针对每个配置项属性添加的唯一的标签,可以在后续步骤中通过标签暴露出配置类中的每个配置项属性,同时保证配置项属性可以被准确地获取,进而获取到属性对应的属性值,也就是配置项。
为所述动态配置项的配置项属性添加标签,例如为配置项的属性添加属性名。
在本示例的一种实施方式中,所述为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项,参考图3所示,包括步骤310、步骤320及步骤330:
步骤310:获取所述动态配置项对应的配置类的类属性;
步骤320:获取所述动态配置项的配置项属性;
步骤330:根据所述类属性和配置项属性为所述动态配置项的配置项属性添加标签。
配置类的类属性就是在建立配置类时,建立的类属性,是根据动态配置项的主业务内容建立的。动态配置项的配置项属性是根据动态配置项在主业务内容基础上的个性化业务内容建立的属性。
每个动态配置项的类属性和配置项属性之间的关系不同。同一个类中配置项的类属性相同,但是配置项属性不同,例如,类属性为A,该类内包含配置项属性B、C、...H,则相应关系为A-B,A-C,...,A-H;进而相应的对每个配置项属性添加的标签就可以是:A-B,A-C,...,A-H。以这种方式,可以保证每个标签的唯一性,进而在后续步骤中准确获取相应的配置项。
在本示例的一种实施方式中,所述根据所述类属性和配置项属性为所述动态配置项的配置项属性添加标签,包括:
将所述类属性和配置项属性的作为输入数据输入预先训练好的机器学习模型,得到为所述动态配置项的配置项属性添加的标签。
通过将类属性和配置项属性的作为输入数据输入预先训练好的机器学习模型,可以自动、准确地得到为动态配置项的配置项属性添加的标签,有效保证为动态配置项的配置项属性添加的标签的准确性和效率。其中,类属性和配置项属性的作为输入数据就是例如类属性和配置项属性的二进制数据。
在本示例的一种实施方式中,所述机器学习模型的训练方法包括:
收集动态配置项的类属性和配置项属性的样本组集,所述样本组集中每个样本组事先根据样本组中类属性和配置项属性之间的关联关系标定配置项属性的标签;
将所述样本组集中每个样本组的作为输入数据输入机器学习模型,得到按照每个样本组中类属性和配置项属性的关联关系对配置项属性标定的标签;
如果存在有样本组的数据输入机器学习模型后,得到的配置项属性的标签与对样本组事先标定的配置项属性的标签不一致,则调整机器学习模型的系数,直到一致;
当所有的样本组的数据输入机器学习模型后,得到的配置项属性的标签与对每个样本组事先标定的配置项属性的标签一致,训练结束。
动态配置项的类属性和配置项属性的样本组可以指示每个动态配置项的类属性和配置项属性的唯一关系,通过动态配置项的类属性和配置项属性的样本组进行机器学习模型的训练可以有效保证机器学习模型根据动态配置项的类属性和配置项属性添加标签的准确性。
在步骤S130中,读取所述配置项属性添加标签的动态配置项到可重用组件。
在本示例的实施方式中,可重用组件JavaBean是一种JAVA语言写成的可重用组件。JavaBean通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,通过set和get方法获取。为配置项属性添加的标签符合这种模式,其他Java类可以通过自省机制(反射机制)发现和操作这些JavaBean的属性。通过读取所述配置项属性添加标签的动态配置项到可重用组件,这样可以通过配置项属性的标签,基于可重用组件的一致性设计模式的公共方法将内部域暴露成员属性,进而供其他类调用成员属性,也就是调用配置项属性。
在本示例的一种实施方式中,所述读取所述配置项属性添加标签的动态配置项到可重用组件,包括:
根据所述配置项属性添加标签的动态配置项之间的关联关系,将关联关系为需共同调用的动态配置项保存为配置项集合;
将所述配置项集合读取到可重用组件。
将关联关系为需共同调用的配置项属性添加标签的动态配置项保存为配置项集合,然后读取到可重用组件。这样可以根据其中一个一起调用所有的集合中的配置项,同时根据集合中任意一个配置项关联获取到所有的需要调用的配置项,可以有效保险配置项获取的效率。
在步骤S140中,当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
在本示例的实施方式中,利用可重用组件的通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,然后通过set和get方法获取的这个属性,可以利用为配置项属性添加的标签,从所述可重用组件中获得该标签对应的属性。也就是利用为配置项属性添加的标签,查找该标签对应的属性的获取方法,如果查找到该属性的获取方法,证明可以获取,直接返回属性对应的配置项,以这种方式,效率高,准确度高。在保证准确率的情况下有效保证目标配置项的获取效率。有效避免了直接从关联容器中获取配置项效率变慢的问题,提高了每个使用动态配置的接口的效率。
在本示例的一种实施方式中,所述当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项,包括:
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签查找所述目标配置项的配置项属性对应的获取方法;
若根据所述属性标签查找到所述目标配置项的配置项属性对应的获取方法,返回所述配置项属性对应的配置项。
目标配置项的获取指令中可以包含目标配置项的属性标签,该属性标签是事先根据可重用组件中的动态配置项添加的标签公布的属性标签。利用获取指令中的属性标签,例如属性名,查找所述目标配置项的配置项属性对应的获取方法,例如查找getUserName方法,进而可以通过getUserName来访问userName属性。然后,若根据属性标签查找到目标配置项的配置项属性对应的获取方法,可以准确地返回配置项属性对应的配置项。
在本示例的一种实施方式中,所述当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签查找所述目标配置项的配置项属性对应的获取方法,包括:
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签获取所述属性标签对应的属性的描述器;
利用所述属性的描述器获取所述属性标签对应的属性的属性值的获取方法,作为所述目标配置项的配置项属性对应的获取方法。
属性的描述器就是PropertyDescriptor类,PropertyDescriptor类表示JavaBean类通过存储器导出一个属性。利用获取指令中的属性标签获取属性标签对应的属性的描述器,然后可以获得属性标签对应的属性的属性值的获取方法,例如getReadMethod(*)方法,即获得用于读取属性值的方法。
在本示例的一种实施方式中,在所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性之前,所述方法还包括:
接收用户上传的动态配置项,所述动态配置项根据所述动态配置项的业务内容添加了业务标识。
接收用户上传的用于更新、修改等配置作用的动态配置项,动态配置项根据动态配置项的业务内容,参照业务标识表添加了业务标识。这样可以实现动态配置项的实时准确的存储。
本公开还提供了一种基于可重用组件的配置项获取的装置。参考图4所示,该基于可重用组件的配置项获取的装置可以包括建立模块410、添加模块420、读取模块430以及获取模块440。其中:
建立模块410可以用于根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
添加模块420可以用于为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;
读取模块430可以用于读取所述配置项属性添加标签的动态配置项到可重用组件;
获取模块440可以用于当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
上述基于可重用组件的配置项获取的装置中各模块的具体细节已经在对应的基于可重用组件的配置项获取的方法中进行了详细的描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图5来描述根据本发明的这种实施方式的电子设备500。图5显示的电子设备500仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图5所示,电子设备500以通用计算设备的形式表现。电子设备500的组件可以包括但不限于:上述至少一个处理单元510、上述至少一个存储单元520、连接不同系统组件(包括存储单元520和处理单元510)的总线530。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元510执行,使得所述处理单元510执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元510可以执行如图1中所示的步骤S110:根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;S120:为所述配置项属性添加标签,得到配置项属性添加标签的动态配置项;步骤S130:读取所述配置项属性添加标签的动态配置项到可重用组件;步骤S140:当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
存储单元520可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)5201和/或高速缓存存储单元5202,还可以进一步包括只读存储单元(ROM)5203。
存储单元520还可以包括具有一组(至少一个)程序模块5205的程序/实用工具5204,这样的程序模块5205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线530可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备500也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得客户能与该电子设备500交互的设备通信,和/或与使得该电子设备500能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口550进行。并且,电子设备500还可以通过网络适配器560与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器560通过总线530与电子设备500的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备500使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
参考图6所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品600,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在客户计算设备上执行、部分地在客户设备上执行、作为一个独立的软件包执行、部分在客户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到客户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (7)
1.一种基于可重用组件的配置项获取的方法,其特征在于,包括:
根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
获取所述动态配置项对应的配置类的类属性;
获取所述动态配置项的配置项属性;
将所述类属性和配置项属性的作为输入数据输入预先训练好的机器学习模型,得到为所述动态配置项的配置项属性添加的标签;其中,所述机器学习模型的训练方法包括:收集动态配置项的类属性和配置项属性的样本组集,所述样本组集中每个样本组事先根据样本组中类属性和配置项属性之间的关联关系标定配置项属性的标签;将所述样本组集中每个样本组的作为输入数据输入机器学习模型,得到按照每个样本组中类属性和配置项属性的关联关系对配置项属性标定的标签;如果存在有样本组的数据输入机器学习模型后,得到的配置项属性的标签与对样本组事先标定的配置项属性的标签不一致,则调整机器学习模型的系数,直到一致;当所有的样本组的数据输入机器学习模型后,得到的配置项属性的标签与对每个样本组事先标定的配置项属性的标签一致,训练结束;
读取所述配置项属性添加标签的动态配置项到可重用组件;
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
2.根据权利要求1所述的方法,其特征在于,所述根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性,包括:
将业务内容为属于同一业务的动态配置项分为同一类,建立配置类;
为所述配置类中的所有所述动态配置项分别建立配置项属性。
3.根据权利要求1所述的方法,其特征在于,所述读取所述配置项属性添加标签的动态配置项到可重用组件,包括:
根据所述配置项属性添加标签的动态配置项之间的关联关系,将关联关系为需共同调用的动态配置项保存为配置项集合;
将所述配置项集合读取到可重用组件。
4.根据权利要求1所述的方法,其特征在于,所述当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项,包括:
当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签查找所述目标配置项的配置项属性对应的获取方法;
若根据所述属性标签查找到所述目标配置项的配置项属性对应的获取方法,返回所述配置项属性对应的配置项。
5.一种基于可重用组件的配置项获取的装置,其特征在于,包括:
建立模块,用于根据动态配置项的业务内容为所述动态配置项建立配置类,所述配置类至少包括配置项属性;
添加模块,用于获取所述动态配置项对应的配置类的类属性;获取所述动态配置项的配置项属性;将所述类属性和配置项属性的作为输入数据输入预先训练好的机器学习模型,得到为所述动态配置项的配置项属性添加的标签;其中,所述机器学习模型的训练方法包括:收集动态配置项的类属性和配置项属性的样本组集,所述样本组集中每个样本组事先根据样本组中类属性和配置项属性之间的关联关系标定配置项属性的标签;将所述样本组集中每个样本组的作为输入数据输入机器学习模型,得到按照每个样本组中类属性和配置项属性的关联关系对配置项属性标定的标签;如果存在有样本组的数据输入机器学习模型后,得到的配置项属性的标签与对样本组事先标定的配置项属性的标签不一致,则调整机器学习模型的系数,直到一致;当所有的样本组的数据输入机器学习模型后,得到的配置项属性的标签与对每个样本组事先标定的配置项属性的标签一致,训练结束;
读取模块,用于读取所述配置项属性添加标签的动态配置项到可重用组件;
获取模块,用于当接收到目标配置项的获取指令时,利用所述获取指令中的属性标签从所述可重用组件中获取所述目标配置项。
6.一种计算机可读存储介质,其上存储有基于可重用组件的配置项获取的程序,其特征在于,所述基于可重用组件的配置项获取的程序被处理器执行时实现权利要求1-4任一项所述的方法。
7.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的基于可重用组件的配置项获取的程序;其中,所述处理器配置为经由执行所述基于可重用组件的配置项获取的程序来执行权利要求1-4任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910630660.0A CN110471708B (zh) | 2019-07-12 | 2019-07-12 | 基于可重用组件的配置项获取的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910630660.0A CN110471708B (zh) | 2019-07-12 | 2019-07-12 | 基于可重用组件的配置项获取的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110471708A CN110471708A (zh) | 2019-11-19 |
CN110471708B true CN110471708B (zh) | 2024-02-02 |
Family
ID=68508468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910630660.0A Active CN110471708B (zh) | 2019-07-12 | 2019-07-12 | 基于可重用组件的配置项获取的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110471708B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115858012B (zh) * | 2022-12-30 | 2023-10-20 | 广州市易鸿智能装备有限公司 | 程序变量配置方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189378A (zh) * | 2018-08-31 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种数据处理方法及相关装置 |
CN109634655A (zh) * | 2018-12-10 | 2019-04-16 | 江苏满运软件科技有限公司 | 基于热部署的变量配置方法、装置、电子设备、存储介质 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6766324B2 (en) * | 2001-07-20 | 2004-07-20 | International Business Machines Corporation | System and method for defining, configuring and using dynamic, persistent Java classes |
CA2371646A1 (en) * | 2002-02-13 | 2003-08-13 | Ibm Canada Limited-Ibm Canada Limitee | Configuration model for configuring an adapter software component to selectively access software objects and object editor using instance of same |
-
2019
- 2019-07-12 CN CN201910630660.0A patent/CN110471708B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109189378A (zh) * | 2018-08-31 | 2019-01-11 | 郑州云海信息技术有限公司 | 一种数据处理方法及相关装置 |
CN109634655A (zh) * | 2018-12-10 | 2019-04-16 | 江苏满运软件科技有限公司 | 基于热部署的变量配置方法、装置、电子设备、存储介质 |
Non-Patent Citations (1)
Title |
---|
基于J2EE平台WEB组件开发中的定制标签技术评介;曾光辉 等;湖南文理学院学报(自然科学版);第19卷(第2期);第82-86页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110471708A (zh) | 2019-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109062563B (zh) | 用于生成页面的方法和装置 | |
CN109558525B (zh) | 一种测试数据集的生成方法、装置、设备和存储介质 | |
CN111522927B (zh) | 基于知识图谱的实体查询方法和装置 | |
US20220067024A1 (en) | Facilitating performance of database operations using microservices | |
CN110688096B (zh) | 包含插件的应用程序的构建方法、装置、介质及电子设备 | |
CN112667415B (zh) | 数据调用方法、装置、可读存储介质及电子设备 | |
CN113360519B (zh) | 数据处理方法、装置、设备和存储介质 | |
CN113626223A (zh) | 一种接口调用方法和装置 | |
CN110059172B (zh) | 基于自然语言理解的推荐答案的方法和装置 | |
CN109033456B (zh) | 一种条件查询方法、装置、电子设备和存储介质 | |
CN108959294B (zh) | 一种访问搜索引擎的方法和装置 | |
CN110471708B (zh) | 基于可重用组件的配置项获取的方法及装置 | |
CN113760948A (zh) | 一种数据查询的方法及装置 | |
CN111930891A (zh) | 基于知识图谱的检索文本扩展方法及相关装置 | |
CN111488386A (zh) | 数据查询方法和装置 | |
CN113127357B (zh) | 单元测试方法、装置、设备、存储介质及程序产品 | |
US20140207729A1 (en) | Rapid Provisioning of Information for Business Analytics | |
CN111488286B (zh) | 一种Android模块独立开发的方法及装置 | |
EP4053713A1 (en) | Question and answer method and apparatus based on knowledge graph | |
CN112988583A (zh) | 数据库语法兼容性测试的方法和装置 | |
CN112182083A (zh) | 文件生成方法、装置、设备及存储介质 | |
CN110852077A (zh) | 动态调整Word2Vec模型词典的方法、装置、介质及电子设备 | |
CN116301869B (zh) | 前端页面配置管控系统、方法、设备、介质 | |
CN115208960B (zh) | 协议切换方法及相关设备 | |
CN113835893B (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 |