CN108268289A - web应用的参数配置方法、装置及*** - Google Patents

web应用的参数配置方法、装置及*** Download PDF

Info

Publication number
CN108268289A
CN108268289A CN201611254000.XA CN201611254000A CN108268289A CN 108268289 A CN108268289 A CN 108268289A CN 201611254000 A CN201611254000 A CN 201611254000A CN 108268289 A CN108268289 A CN 108268289A
Authority
CN
China
Prior art keywords
parameter
configuration
web applications
bean
web
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
Application number
CN201611254000.XA
Other languages
English (en)
Other versions
CN108268289B (zh
Inventor
李震
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201611254000.XA priority Critical patent/CN108268289B/zh
Publication of CN108268289A publication Critical patent/CN108268289A/zh
Application granted granted Critical
Publication of CN108268289B publication Critical patent/CN108268289B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • G06F9/4451User 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)

Abstract

本申请实施例公开了一种web应用的参数配置方法、装置及***,涉及参数配置技术领域。所述***包括配置管理控制台以及参数配置设备,所述配置管理控制台用于:从数据库中确定出待配置的第一web应用,确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数,接收用户在所述配置界面上对所述可配置参数输入的配置修改信息,发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置;所述参数配置设备用于:接收所述配置管理控制台发送的所述修改请求,根据所述修改请求修改所述第一web应用的参数。利用本申请实施例,可以提升***的操作便捷性、降低出错率。

Description

web应用的参数配置方法、装置及***
技术领域
本申请属于参数配置技术领域,尤其涉及一种web应用的参数配置方法、装置及***。
背景技术
在web应用中,经常需要对***的功能设置开关或者修改参数。目前,一般通过集中式的配置中心来实现配置推送,同时web应用里根据参数做相应的代码处理,需要通过专门的程序去修改内存里的参数配置,运行时通过在服务器上触发程序的方式来修改。这种方法缺乏统一性,当参数配置太多时将难以维护,操作便捷性很差,容易出错。
因此,如何研究和开发出一种新的方案以提升***的操作便捷性、降低出错率是本领域亟待解决的技术难题。
发明内容
本申请实施例的目的是提供一种web应用的参数配置方法、装置及***,可以提升***的操作便捷性、降低出错率。
为解决上述技术问题,本申请实施例是这样实现的:
根据本申请的第一方面,提出了一种web应用的参数配置***,包括配置管理控制台以及参数配置设备;
其中,所述配置管理控制台用于:从数据库中确定出待配置的第一web应用,确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数,接收用户在所述配置界面上对所述可配置参数输入的配置修改信息,发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置;
所述参数配置设备用于:接收所述配置管理控制台发送的所述修改请求,根据所述修改请求修改所述第一web应用的参数。
根据本申请的第二方面,提出了一种配置管理控制台,包括:
web应用确定模块,用于从所述配置管理控制台的数据库中确定出待配置的第一web应用;
参数信息确定模块,用于确定所述第一web应用的可配置参数信息;
配置界面提供模块,用于提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数;
修改信息接收模块,用于接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
修改请求发送模块,用于发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
根据本申请的第三方面,提出了一种参数配置设备,包括:
修改请求接收模块,用于接收配置管理控制台发送的修改请求;
参数修改模块,用于根据所述修改请求修改第一web应用的参数。
根据本申请的第四方面,提出了一种web应用的参数配置方法,包括:
配置管理控制台从数据库中确定出待配置的第一web应用;
确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数;
接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
根据本申请的第五方面,提出了一种web应用的参数配置方法,包括:
参数配置设备接收配置管理控制台发送的修改请求;
根据所述修改请求修改第一web应用的参数。
由以上本申请实施例提供的技术方案可见,本申请实施例当需要修改配置时,通过一个配置管理控制台对web应用的参数配置设备进行远程调用,通过bean名称和属性名称定位到bean对象,执行内存修改,实现参数的动态修改,有效提升配置的可读性和可维护性,提升***的操作便捷性、降低出错率。
为让本申请的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本申请一示例性实施例的一种web应用的参数配置***的场景示意图;
图2示出了根据本申请一示例性实施例的一种配置管理控制台的结构框图;
图3示出了根据本申请一示例性实施例的一种参数配置设备的结构示意图;
图4示出了根据本申请一示例性实施例的一种web应用的参数配置方法的流程图;
图5示出了根据本申请一示例性实施例的一种web应用的参数配置方法的流程图;
图6示出了根据本申请一示例性实施例的一种web应用的参数配置***的结构示意图;
图7示出了根据本申请一示例性实施例的一种web应用的参数配置***的交互图;
图8示出了根据本申请一示例性实施例中参数配置设备的声明和注册过程示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
具体的,图1示出了根据本申请一示例性实施例的一种web应用的参数配置***的场景示意图,请参阅图1,该***包括配置管理控制台100以及参数配置设备200。在本申请的实施例中,参数配置设备可以应用在web应用上,也可以设置在web应用外,与web应用相通信,也即本申请实施例的技术方案在配置管理控制台以及参数配置设备之间实现,对web应用进行实时动态参数配置,请参阅图7:
所述配置管理控制台100用于:从数据库中确定出待配置的第一web应用,确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数,接收用户在所述配置界面上对所述可配置参数输入的配置修改信息,发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
所述参数配置设备200用于:接收所述配置管理控制台发送的所述修改请求,根据所述修改请求修改所述第一web应用的参数。
所述修改请求包括需要修改配置的可配置参数及参数修改值,所述可配置参数包括bean名称及属性名称。
在本申请修改第一web应用的参数配置之前,所述参数配置设备首先进行参数配置,具体的,请参阅图8,根据动态配置信息从所述第一web应用中采集需要进行动态配置的参数,所述动态配置信息用于指示需要进行动态配置的参数,在所述需要进行动态配置的参数上标注java注解,所述java注解为@Switch。
在本申请的另一实施方式中,所述参数配置设备还用于在所述@Switch中添加有配置名称。此处的配置名称为可读性强的中文描述。
在本申请的又一实施方式中,所述参数配置设备还用于参数识别,具体的,请参阅图8,对Spring容器进行初始化,遍历所述Spring容器里所有的java bean,根据java注解识别出带有@Switch的java bean以及属性,将识别出的带有@Switch的java bean以及属性按照预定格式保存在配置表里,所述预定格式包括bean名称、属性名称以及java bean,诸如按照Map<beanName+fieldName,beanObj>进行保存。参数配置和参数识别是发现和注册的过程,该过程中在Spring容器完成所有的初始化后开始对配置Filter进行初始化,在这个过程中自动识别和寻找带有@Switch标签的bean和属性,同时将其保存在内存里的一个Map里,用于配置管理的寻址。
在本申请的实际实施过程中,如图6所示,当参数配置设备应用于第一web应用时,首先通过第一web应用中的应用程序编程接口API在web.xml里添加对应的过滤器Filter,在应用开发的过程对需要动态配置的变量进行标注,使得参数带有java注解,并将web应用的ip地址添加到配置管理控制台中。由于预先通过java注解的方式来统一定义配置,因此所述可配置参数标注有java注解,后续修改参数配置时可使得***的可维护性和易用性大大提升。
在本申请中,所述配置管理控制台从数据库中确定出待配置的第一web应用包括:接收用户确定的待配置的第一web应用所在的机器的IP地址信息,根据所述IP地址信息,从所述控制台的数据库中定位出所述待配置的第一web应用。
所述配置管理控制台确定所述第一web应用的可配置参数包括所述配置管理控制台获取所述第一web应用的配置表,识别出所述参数中带注解的参数,将所述带注解的参数确定为可配置参数。
所述参数配置设备根据所述修改请求修改所述第一web应用的参数包括所述参数配置设备根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象,通过java反射技术根据所述参数修改值修改所述bean对象中的参数。在本申请的一个具体的应用场景里,比如具有搜索功能的一web应用内设置有多个变量,其中有一个变量代表缓存时间。预先通过API对该变量进行java注解,在此变量加上了相应的java注解,则该变量可被web应用自动识别为一个可控的参数配置。
当用户发现需要在配置管理控制台实时修改该变量,比如启动后默认该变量是1分钟,在运行时需要将其调整为10分钟。则,用户通过配置管理控制台输入修改值10分钟,配置管理控制台发送修改请求给web应用的参数配置设备,以对web应用进行实时修改并生效。
图2示出了根据本申请一示例性实施例的一种配置管理控制台的结构框图,请参阅图2,配置管理控制台100包括:
web应用确定模块101,用于从所述配置管理控制台的数据库中确定出待配置的第一web应用。在本申请的一种实施方式中,所述web应用确定模块包括:地址信息接收模块,用于接收用户确定的待配置的第一web应用所在的机器的IP地址信息;web应用定位模块,用于根据所述IP地址信息,从所述控制台的数据库中定位出所述待配置的第一web应用。
参数信息确定模块102,用于确定所述第一web应用的可配置参数信息。在本申请的一种实施方式中,所述参数信息确定模块包括:配置表获取模块,用于获取所述第一web应用的配置表;参数识别模块,用于识别出所述参数中带注解的参数,将所述带注解的参数确定为可配置参数。
配置界面提供模块103,用于提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数;
修改信息接收模块104,用于接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
修改请求发送模块105,用于发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
在本申请的一种实施方式中,如图6所示,当参数配置设备设置于web应用时,配置管理控制台通过web应用的list接口读取该应用上所有的配置参数所对应的bean名称以及属性名称,定位出需要修改配置的参数的bean名称和属性名称,并自动根据定位出的bean名称和属性名称生成配置界面,以使用户通过该配置界面输出对应的修改值。因此,本申请的方案中,用户仅需通过该配置界面输入修改值,后续由web应用自动修改对应的参数配置,无需用户通过控制台写专门的程序去修改参数配置。
图3示出了根据本申请一示例性实施例的一种参数配置设备的结构示意图,请参阅图3,所述参数配置设备200包括:
修改请求接收模块201,用于接收配置管理控制台发送的修改请求,所述修改请求包括需要修改配置的可配置参数及参数修改值,所述可配置参数包括可配置参数的bean名称及属性名称。
参数修改模块202,用于根据所述修改请求修改第一web应用的参数。所述参数修改模块包括:对象定位模块,用于根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象;对象修改模块,用于通过java反射技术根据所述参数修改值修改所述bean对象中的参数。
在本申请的一种实施方式中,当参数配置设备设置于web应用时,请参阅图7,web应用通过modify接口接收到配置管理控制台发送的修改指令之后,根据beanName+fieldName从配置表中查到对应的bean对象,然后用反射技术实时修改内存值实现了配置动态修改。如此,实现了参数的动态调整。
在本申请的一种实施方式中,参数配置设备还包括:
参数标注模块,用于根据动态配置信息从所述第一web应用中采集需要进行动态配置的参数,所述动态配置信息用于指示需要进行动态配置的参数,在所述需要进行动态配置的参数上标注java注解,所述java注解为@Switch。在本申请的一种实施方式中,参数标注模块可通过web应用的API应用程序编程接口来实现。
在本申请的一种实施方式中,所述参数标注模块还用于在所述@Switch中添加有配置名称。此处的配置名称为可读性强的中文描述。
如图6所示,web应用中的API是web应用的对外接口,用于工程师对变量进行标注,标注后即自动成为动态配置。在配置声明过程中,只需要在需要变为动态配置的变量之上加上特定的java注解@Switch即可。
在本申请的一种实施方式中,所述参数配置设备还包括:参数识别模块,用于对Spring容器进行初始化,遍历所述Spring容器里所有的java bean,根据java注解识别出带有@Switch的java bean以及属性,将识别出的带有@Switch的java bean以及属性按照预定格式保存在配置表里,所述预定格式包括bean名称、属性名称以及java bean,诸如按照Map<beanName+fieldName,beanObj>进行保存。配置表是在web应用启动过程中自动产生的,用于维护应用里的所有配置。
参数识别模块是配置发现和注册的过程,该过程中在Spring容器完成所有的初始化后开始对配置Filter进行初始化,在这个过程中自动识别和寻找带有@Switch标签的bean和属性,同时将其保存在内存里的一个Map里,用于配置管理的寻址。
如上所述,本申请基于java注解和Spring容器,在web应用启动时候通过遍历Spring容器里所有的bean寻找带有特定注解的bean和属性来进行配置自动识别,并保存进一个Map里;需要修改配置时,通过一个配置管理控制台对web应用进行远程调用,向web应用发送修改值,web应用通过bean名称和属性名称从Map里定位到bean,执行内存修改,实现参数的动态修改。
在介绍了本申请的***、设备之后,接下来,参考附图对本申请的一种web应用的参数配置方法进行介绍。该方法的实施可以参见上述设备的实施,重复之处不再赘述。
图4示出了根据本申请一示例性实施例的一种web应用的参数配置方法的流程图,请参阅图4,所述方法包括:
S101:配置管理控制台从数据库中确定出待配置的第一web应用。
在本申请的一种实施方式中,该步骤包括:所述配置管理控制台接收用户确定的待配置的第一web应用所在的机器的IP地址信息;
根据所述IP地址信息,从所述控制台的数据库中定位出所述待配置的第一web应用。
S102:确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数。
在本申请的一种实施方式中,所述配置管理控制台确定所述第一web应用的可配置参数包括所述配置管理控制台获取所述第一web应用的配置表;
识别出所述参数中带注解的参数,将所述带注解的参数确定为可配置参数。
S103:接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
S104:发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
在本申请的一种实施方式中,如图6所示,当参数配置设备设置于web应用时,配置管理控制台通过web应用的list接口读取该应用上所有的配置参数所对应的bean名称以及属性名称,定位出需要修改配置的参数的bean名称和属性名称,并自动根据定位出的bean名称和属性名称生成配置界面,以使用户通过该配置界面输出对应的修改值。因此,本申请的方案中,用户仅需通过该配置界面输入修改值,后续由web应用自动修改对应的参数配置,无需用户通过控制台写专门的程序去修改参数配置。
图5示出了根据本申请一示例性实施例的一种web应用的参数配置方法的流程图,请参阅图5,该方法包括:
S201:参数配置设备接收配置管理控制台发送的修改请求,所述修改请求包括需要修改配置的第一web应用的可配置参数及参数修改值,所述可配置参数包括bean名称及属性名称。
S202:根据所述修改请求修改第一web应用的参数,该步骤包括:
所述参数配置设备根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象;
通过java反射技术根据所述参数修改值修改所述bean对象中的参数。在该实施方式,首先通过java注解的方式来统一定义配置,然后对配置进行自动识别和统一管理,当需要修改配置的时候,通过调用web应用里的统一网关实现配置变更,使得web应用的可维护性和易用性大大提升。
在本申请的一种实施方式中,当参数配置设备设置于web应用时,请参阅图7,web应用通过modify接口接收到配置管理控制台发送的修改指令之后,根据beanName+fieldName从配置表中查到对应的bean对象,然后用反射技术实时修改内存值实现了配置动态修改。如此,实现了参数的动态调整。
在本申请的一种实施方式,所述方法还包括配置声明过程,如图8所示,具体的:
所述参数配置设备根据动态配置信息从所述第一web应用中采集需要进行动态配置的参数,所述动态配置信息用于指示需要进行动态配置的参数;
在所述需要进行动态配置的参数上标注java注解,所述java注解为@Switch。
在本申请的另一种实施方式中,所述方法还包括:在所述@Switch中添加配置名称。此处的配置名称为可读性强的中文描述。
web应用中的API是web应用的对外接口,用于工程师对变量进行标注,标注后即自动成为动态配置。在配置声明过程中,只需要在需要变为动态配置的变量之上加上特定的java注解@Switch即可。
在本申请的一种实施方式中,该方法还包括配置发现和注册的过程,具体的,请参阅图8:
所述参数配置设备对Spring容器进行初始化,遍历所述Spring容器里所有的javabean,根据java注解识别出带有@Switch的java bean以及属性;
将识别出的带有@Switch的java bean以及属性按照预定格式保存在配置表里,所述预定格式包括bean名称、属性名称以及java bean。诸如按照Map<beanName+fieldName,beanObj>进行保存。配置表是在web应用启动过程中自动产生的,用于维护应用里的所有配置。
在配置发现和注册的过程中,在Spring容器完成所有的初始化后开始对配置Filter进行初始化,在这个过程中自动识别和寻找带有@Switch标签的bean和属性,同时将其保存在内存里的一个Map里,用于配置管理的寻址。
如上所述,本申请基于java注解和Spring容器,在web应用启动时候通过遍历Spring容器里所有的bean寻找带有特定注解的bean和属性来进行配置自动识别,并保存进一个Map里;需要修改配置时,通过一个控制台对web应用进行远程调用,向web应用发送修改值,web应用通过bean名称和属性名称从Map里定位到bean,执行内存修改,实现参数的动态修改。也即,本申请通过注解方式实现配置和代码的关联,采用这种方式可以有效提升配置的可读性和可维护性。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、***或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (21)

1.一种web应用的参数配置***,其特征在于,所述***包括配置管理控制台以及参数配置设备;
其中,所述配置管理控制台用于:从数据库中确定出待配置的第一web应用,确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数,接收用户在所述配置界面上对所述可配置参数输入的配置修改信息,发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置;
所述参数配置设备用于:接收所述配置管理控制台发送的所述修改请求,根据所述修改请求修改所述第一web应用的参数。
2.根据权利要求1所述的***,其特征在于,所述修改请求包括需要修改配置的可配置参数及参数修改值,所述可配置参数包括bean名称及属性名称,所述可配置参数标注有java注解。
3.根据权利要求2所述的***,其特征在于,所述配置管理控制台从数据库中确定出待配置的第一web应用包括:接收用户确定的待配置的第一web应用所在的机器的IP地址信息,根据所述IP地址信息,从所述控制台的数据库中定位出所述待配置的第一web应用。
4.根据权利要求2所述的***,其特征在于,所述配置管理控制台确定所述第一web应用的可配置参数包括:获取所述第一web应用的配置表,识别出所述参数中带注解的参数,将所述带注解的参数确定为可配置参数。
5.根据权利要求4所述的***,其特征在于,所述参数配置设备根据所述修改请求修改所述第一web应用的参数包括:根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象,通过java反射技术根据所述参数修改值修改所述bean对象中的参数。
6.根据权利要求5所述的***,其特征在于,所述参数配置设备还用于:根据动态配置信息从所述第一web应用中采集需要进行动态配置的参数,所述动态配置信息用于指示需要进行动态配置的参数,在所述需要进行动态配置的参数上标注java注解,所述java注解为@Switch。
7.根据权利要求6所述的***,其特征在于,所述参数配置设备还用于在所述@Switch中添加有配置名称。
8.根据权利要求6或7所述的***,其特征在于,所述参数配置设备还用于:对Spring容器进行初始化,遍历所述Spring容器里所有的java bean,根据java注解识别出带有@Switch的java bean以及属性,将识别出的带有@Switch的java bean以及属性按照预定格式保存在配置表里,所述预定格式包括bean名称、属性名称以及java bean。
9.一种配置管理控制台,其特征在于,所述配置管理控制台包括:
web应用确定模块,用于从所述配置管理控制台的数据库中确定出待配置的第一web应用;
参数信息确定模块,用于确定所述第一web应用的可配置参数信息;
配置界面提供模块,用于提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数;
修改信息接收模块,用于接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
修改请求发送模块,用于发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
10.一种参数配置设备,其特征在于,所述参数配置设备包括:
修改请求接收模块,用于接收配置管理控制台发送的修改请求;
参数修改模块,用于根据所述修改请求修改第一web应用的参数。
11.根据权利要求10所述的参数配置设备,其特征在于,所述修改请求包括需要修改配置的可配置参数及参数修改值,所述可配置参数包括可配置参数的bean名称及属性名称。
12.根据权利要求11所述的参数配置设备,其特征在于,所述参数修改模块包括:
对象定位模块,用于根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象;
对象修改模块,用于通过java反射技术根据所述参数修改值修改所述bean对象中的参数。
13.一种web应用的参数配置方法,其特征在于,所述方法包括:
配置管理控制台从数据库中确定出待配置的第一web应用;
确定所述第一web应用的可配置参数,并提供所述第一web应用的配置界面,所述配置界面中至少显示可配置参数;
接收用户在所述配置界面上对所述可配置参数输入的配置修改信息;
发送修改请求给所述第一web应用的参数配置设备,以对所述第一web应用进行参数配置。
14.根据权利要求13所述的方法,其特征在于,所述配置管理控制台从数据库中确定出待配置的第一web应用包括:
所述配置管理控制台接收用户确定的待配置的第一web应用所在的机器的IP地址信息;
根据所述IP地址信息,从所述控制台的数据库中定位出所述待配置的第一web应用。
15.根据权利要求13所述的方法,其特征在于,所述配置管理控制台确定所述第一web应用的可配置参数包括:
所述配置管理控制台获取所述第一web应用的配置表;
识别出所述参数中带注解的参数,将所述带注解的参数确定为可配置参数。
16.一种web应用的参数配置方法,其特征在于,所述方法包括:
参数配置设备接收配置管理控制台发送的修改请求;
根据所述修改请求修改第一web应用的参数。
17.根据权利要求16所述的方法,其特征在于,所述修改请求包括需要修改配置的第一web应用的可配置参数及参数修改值,所述可配置参数包括bean名称及属性名称。
18.根据权利要求17所述的方法,其特征在于,所述参数配置设备根据所述修改请求修改所述第一web应用的参数包括:
所述参数配置设备根据所述bean名称及属性名称查找配置表,定位出需要修改配置的可配置参数的bean名称及属性名称对应的bean对象;
通过java反射技术根据所述参数修改值修改所述bean对象中的参数。
19.根据权利要求18所述的方法,其特征在于,所述方法还包括:
所述参数配置设备根据动态配置信息从所述第一web应用中采集需要进行动态配置的参数,所述动态配置信息用于指示需要进行动态配置的参数;
在所述需要进行动态配置的参数上标注java注解,所述java注解为@Switch。
20.根据权利要求19所述的方法,其特征在于,所述方法还包括:
在所述@Switch中添加配置名称。
21.根据权利要求19或20所述的方法,其特征在于,所述方法还包括:
所述参数配置设备对Spring容器进行初始化,遍历所述Spring容器里所有的javabean,根据java注解识别出带有@Switch的java bean以及属性;
将识别出的带有@Switch的java bean以及属性按照预定格式保存在配置表里,所述预定格式包括bean名称、属性名称以及java bean。
CN201611254000.XA 2016-12-30 2016-12-30 web应用的参数配置方法、装置及*** Active CN108268289B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611254000.XA CN108268289B (zh) 2016-12-30 2016-12-30 web应用的参数配置方法、装置及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611254000.XA CN108268289B (zh) 2016-12-30 2016-12-30 web应用的参数配置方法、装置及***

Publications (2)

Publication Number Publication Date
CN108268289A true CN108268289A (zh) 2018-07-10
CN108268289B CN108268289B (zh) 2022-01-28

Family

ID=62754271

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611254000.XA Active CN108268289B (zh) 2016-12-30 2016-12-30 web应用的参数配置方法、装置及***

Country Status (1)

Country Link
CN (1) CN108268289B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109634655A (zh) * 2018-12-10 2019-04-16 江苏满运软件科技有限公司 基于热部署的变量配置方法、装置、电子设备、存储介质
CN109857496A (zh) * 2018-12-30 2019-06-07 贝壳技术有限公司 一种erp***中多应用导航配置方法及***
CN110661873A (zh) * 2019-09-27 2020-01-07 南京博联智能科技有限公司 物联网平台参数转换方法、装置、设备、介质及***
CN111694586A (zh) * 2020-06-05 2020-09-22 平安科技(深圳)有限公司 程序初始化方法、程序初始化装置、终端设备及存储介质
CN111857863A (zh) * 2020-06-19 2020-10-30 微梦创科网络科技(中国)有限公司 一种动态配置方法及***
CN114115672A (zh) * 2021-11-22 2022-03-01 北京光启元数字科技有限公司 一种对象处理方法、装置、设备及介质
CN114356427A (zh) * 2022-01-06 2022-04-15 成都新希望金融信息有限公司 一种扫描过滤方法、装置、电子设备及存储介质
CN114489830A (zh) * 2021-12-23 2022-05-13 阿里巴巴(中国)有限公司 配置页面操作方法、处理方法和计算设备

Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002050670A1 (en) * 2000-12-21 2002-06-27 Crossmarx B.V. Software application and method for building software applications
CN1578943A (zh) * 2001-09-21 2005-02-09 Bea***公司 用于应用配置的智能目录的方法和设备
CN1577322A (zh) * 2003-07-17 2005-02-09 国际商业机器公司 管理数据处理***中的应用文件的方法和装置
US20060064673A1 (en) * 2004-08-17 2006-03-23 National Instruments Corporation Variable abstraction
CN1918572A (zh) * 2004-02-26 2007-02-21 国际商业机器公司 使web应用能够访问企业管理的数据的方法、装置和计算机程序
CN101042767A (zh) * 2006-02-28 2007-09-26 国际商业机器公司 web服务数据库群集体系结构及其方法
CN101187868A (zh) * 2006-11-23 2008-05-28 国际商业机器公司 在基于Web的门户环境中配置应用的方法和***
CN101216838A (zh) * 2008-01-15 2008-07-09 中兴通讯股份有限公司 基于web标记的xml界面配置文件分发***及方法
CN101276271A (zh) * 2007-03-29 2008-10-01 北京邮电大学 一种面向切面编程的******及方法
CN101414949A (zh) * 2008-11-28 2009-04-22 阿里巴巴集团控股有限公司 一种链式数据传输方法、节点及***
US20100293168A1 (en) * 2009-05-13 2010-11-18 International Business Machines Corporation Determining configuration parameter dependencies via analysis of configuration data from multi-tiered enterprise applications
CN101901267A (zh) * 2010-08-02 2010-12-01 中兴通讯股份有限公司 配置文件管理的方法及装置
CN102110048A (zh) * 2009-12-28 2011-06-29 国际商业机器公司 用于基于框架的应用程序的回归测试选择方法和装置
CN102323884A (zh) * 2011-09-07 2012-01-18 山东中创软件工程股份有限公司 一种多Web服务发布的方法及Web服务容器
CN102508673A (zh) * 2011-12-02 2012-06-20 方正国际软件有限公司 快速开发与配置平台类软件的***及方法
CN102566992A (zh) * 2010-12-17 2012-07-11 卓望数码技术(深圳)有限公司 一种基于***运行的依赖注入方法及装置
CN103064707A (zh) * 2012-12-25 2013-04-24 广州杰赛科技股份有限公司 智能终端参数组态配置方法和***
CN103577321A (zh) * 2012-08-07 2014-02-12 阿里巴巴集团控股有限公司 一种网站页面的多版本并行测试方法和服务器
CN104360853A (zh) * 2014-11-03 2015-02-18 中国农业银行股份有限公司 一种配置信息管理方法、装置和信息***
CN105549982A (zh) * 2016-01-14 2016-05-04 国网山东省电力公司物资公司 一种基于模型配置的自动化开发平台

Patent Citations (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2002050670A1 (en) * 2000-12-21 2002-06-27 Crossmarx B.V. Software application and method for building software applications
CN1578943A (zh) * 2001-09-21 2005-02-09 Bea***公司 用于应用配置的智能目录的方法和设备
CN1577322A (zh) * 2003-07-17 2005-02-09 国际商业机器公司 管理数据处理***中的应用文件的方法和装置
CN1918572A (zh) * 2004-02-26 2007-02-21 国际商业机器公司 使web应用能够访问企业管理的数据的方法、装置和计算机程序
US20060064673A1 (en) * 2004-08-17 2006-03-23 National Instruments Corporation Variable abstraction
CN101042767A (zh) * 2006-02-28 2007-09-26 国际商业机器公司 web服务数据库群集体系结构及其方法
CN101187868A (zh) * 2006-11-23 2008-05-28 国际商业机器公司 在基于Web的门户环境中配置应用的方法和***
CN101276271A (zh) * 2007-03-29 2008-10-01 北京邮电大学 一种面向切面编程的******及方法
CN101216838A (zh) * 2008-01-15 2008-07-09 中兴通讯股份有限公司 基于web标记的xml界面配置文件分发***及方法
CN101414949A (zh) * 2008-11-28 2009-04-22 阿里巴巴集团控股有限公司 一种链式数据传输方法、节点及***
US20100293168A1 (en) * 2009-05-13 2010-11-18 International Business Machines Corporation Determining configuration parameter dependencies via analysis of configuration data from multi-tiered enterprise applications
CN102110048A (zh) * 2009-12-28 2011-06-29 国际商业机器公司 用于基于框架的应用程序的回归测试选择方法和装置
CN101901267A (zh) * 2010-08-02 2010-12-01 中兴通讯股份有限公司 配置文件管理的方法及装置
CN102566992A (zh) * 2010-12-17 2012-07-11 卓望数码技术(深圳)有限公司 一种基于***运行的依赖注入方法及装置
CN102323884A (zh) * 2011-09-07 2012-01-18 山东中创软件工程股份有限公司 一种多Web服务发布的方法及Web服务容器
CN102508673A (zh) * 2011-12-02 2012-06-20 方正国际软件有限公司 快速开发与配置平台类软件的***及方法
CN103577321A (zh) * 2012-08-07 2014-02-12 阿里巴巴集团控股有限公司 一种网站页面的多版本并行测试方法和服务器
CN103064707A (zh) * 2012-12-25 2013-04-24 广州杰赛科技股份有限公司 智能终端参数组态配置方法和***
CN104360853A (zh) * 2014-11-03 2015-02-18 中国农业银行股份有限公司 一种配置信息管理方法、装置和信息***
CN105549982A (zh) * 2016-01-14 2016-05-04 国网山东省电力公司物资公司 一种基于模型配置的自动化开发平台

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109634655A (zh) * 2018-12-10 2019-04-16 江苏满运软件科技有限公司 基于热部署的变量配置方法、装置、电子设备、存储介质
CN109857496A (zh) * 2018-12-30 2019-06-07 贝壳技术有限公司 一种erp***中多应用导航配置方法及***
CN110661873A (zh) * 2019-09-27 2020-01-07 南京博联智能科技有限公司 物联网平台参数转换方法、装置、设备、介质及***
CN110661873B (zh) * 2019-09-27 2022-06-03 南京博联智能科技有限公司 物联网平台参数转换方法、装置、设备、介质及***
CN111694586A (zh) * 2020-06-05 2020-09-22 平安科技(深圳)有限公司 程序初始化方法、程序初始化装置、终端设备及存储介质
CN111857863A (zh) * 2020-06-19 2020-10-30 微梦创科网络科技(中国)有限公司 一种动态配置方法及***
CN111857863B (zh) * 2020-06-19 2023-10-27 微梦创科网络科技(中国)有限公司 一种动态配置方法及***
CN114115672A (zh) * 2021-11-22 2022-03-01 北京光启元数字科技有限公司 一种对象处理方法、装置、设备及介质
CN114489830A (zh) * 2021-12-23 2022-05-13 阿里巴巴(中国)有限公司 配置页面操作方法、处理方法和计算设备
CN114489830B (zh) * 2021-12-23 2024-06-07 阿里巴巴(中国)有限公司 配置页面操作方法、处理方法和计算设备
CN114356427A (zh) * 2022-01-06 2022-04-15 成都新希望金融信息有限公司 一种扫描过滤方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
CN108268289B (zh) 2022-01-28

Similar Documents

Publication Publication Date Title
CN108268289A (zh) web应用的参数配置方法、装置及***
CN111767143B (zh) 交易数据处理方法、装置、设备及***
CN107450972A (zh) 一种调度方法、装置以及电子设备
CN107562775A (zh) 一种基于区块链的数据处理方法及设备
CN109002362A (zh) 一种服务方法、装置、***以及电子设备
CN106970822A (zh) 一种容器创建方法及装置
CN108959341A (zh) 一种数据同步的方法、装置及设备
CN107506181A (zh) 业务处理、数据处理方法、装置以及电子设备
CN107679700A (zh) 业务流程处理方法、装置及服务器
CN110032409A (zh) 一种客户端屏幕适配方法、装置及电子设备
CN108173706A (zh) 一种多业务***下的业务标记方法、装置及设备
CN110134668A (zh) 应用于区块链的数据迁移方法、装置和设备
CN108334515A (zh) 一种处理崩溃文件中堆栈地址的方法、装置及***
CN108282518A (zh) 一种客户端页面生成方法和装置
CN109241026A (zh) 数据管理的方法、装置及***
CN110245279A (zh) 依赖树生成方法、装置、设备及存储介质
CN109947643A (zh) 一种基于a/b测试的实验方案的配置方法、装置及设备
CN104423961A (zh) 一种生成测试脚本的方法及***
CN108710630A (zh) 一种页面导航方法、装置及设备
CN108320071A (zh) 一种业务风险管理方法、装置及设备
CN109710622A (zh) 一种数据更新方法、装置和***
CN109739474A (zh) 一种业务请求的处理方法、装置、设备及介质
CN109597678A (zh) 任务处理方法及装置
CN108255471A (zh) 一种基于配置套件的***配置项配置装置、方法及设备
CN108304455A (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