一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

XML配置文件升级方法、装置及可读存储介质与流程

2022-02-19 11:33:48 来源:中国专利 TAG:

xml配置文件升级方法、装置及可读存储介质
技术领域
1.本发明涉及计算机软件技术领域,尤其涉及一种xml配置文件升级方法、装置及计算机可读存储介质。


背景技术:

2.随着计算机软件技术的发展,各种各样的应用程序应运而生,为人们的生活带来了诸多方便。
3.目前,应用程序大都带有xml配置文件,用来存储一些配置参数和初始设置参数以及一些可能变动的参数,在应用程序的迭代过程中,不可避免地需要调整一些配置参数,例如在xml配置文件中增加、修改或者是删除一些配置项,如果不对xml配置文件进行升级,则软件在交付时就会遇到问题。
4.现有技术中在对应用程序进行升级时,一般不会对xml配置文件直接进行升级,而是在应用程序升级完成后,人工通过对比来手动进行修改或者编写与xml配置文件结构匹配的工具,通过工具来解析xml配置文件,对xml配置文件进行修改。显然,人工处理的方式增加了产品升级的成本,且伴随着应用程序变得越来越庞大、配置参数越来越多、结构也越来越复杂,人工处理的难度变得越来越大,人工处理的效率低且人工处理后配置文件的正确性也无法保证。


技术实现要素:

5.本发明的主要目的在于提供一种xml配置文件升级方法、装置及计算机可读存储介质,旨在解决现有技术中xml配置文件升级方法耗费人力、升级效率低且正确性无法保证的技术问题。
6.为实现上述目的,本发明实施例提供一种xml配置文件升级方法,所述xml配置文件升级方法包括:在接收到配置文件升级指令时,获取升级转换文件;解析所述升级转换文件,获得预设节点的第一变更说明;获取待升级的原xml配置文件;根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
7.可选地,所述在接收到配置文件升级指令时,获取升级转换文件的步骤之前包括:根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
8.可选地,所述第一变更说明包括预设节点的路径信息、变更类型和变更内容;所述解析所述升级转换文件,获得预设节点的第一变更说明的步骤包括:
解析所述升级转换文件,获取所述预设节点的路径信息、变更类型和变更内容。
9.可选地,所述第二变更说明包括目标节点的路径信息、变更类型和变更内容;所述根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明的步骤包括:根据所述第一变更说明中的路径信息,在所述预设节点中确定本次升级中待变更的目标节点;将所述目标节点的路径信息、变更类型和变更内容,确定为本次升级中待变更的目标节点的第二变更说明。
10.可选地,所述根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件的步骤包括:根据所述第二变更说明中的目标节点的路径信息,利用xpath确定目标节点的位置;根据所述第二变更说明中的变更类型和变更内容,在所述目标节点的位置进行更新,生成新的xml配置文件。
11.可选地,所述变更类型包括replace、insert、insertifmissing、remove、removeall。
12.可选地,本发明还提供一种xml配置文件升级装置,所述xml配置文件升级装置包括:获取模块,用于在接收到配置文件升级指令时,获取升级转换文件;还用于获取待升级的原xml配置文件;解析模块,用于解析所述升级转换文件,获得预设节点的第一变更说明;确定模块,用于根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;更新模块,用于根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
13.可选地,所述xml配置文件升级装置还包括:创建模块,用于根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
14.此外,本发明还提供一种xml配置文件升级设备,所述xml配置文件升级设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的xml配置文件升级方法的步骤。
15.此外,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的xml配置文件升级方法的步骤。
16.本发明提供一种xml配置文件升级方法、装置及可读存储介质,通过在接收到配置文件升级指令时,获取升级转换文件;并解析所述升级转换文件,获得预设节点的第一变更说明;获取待升级的原xml配置文件,根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级;由于升级转换文件中定义了对多种结构的xml配置文件的预设节点如何进行更改,使得升级转换文件可以兼容多种结构的xml配
置文件的升级,升级时,只需要在原xml配置文件中查找是否存在该预设节点,若存在,则将该节点作为目标节点,在原xml配置文件中对目标节点进行更新,解决了现有技术中采用人工比对方式手动升级xml配置文件升级效率低,耗费人力且正确性无法保证的问题,解决了采用传统的工具对配置文件进行升级,无法适用多种结构的xml配置文件的升级,需要多次重复编写升级工具的问题。
附图说明
17.图1为本发明实施例方案涉及的硬件运行环境的xml配置文件升级设备的结构示意图;图2为本发明xml配置文件升级方法第一实施例的流程示意图;图3为本发明xml配置文件升级装置的结构示意图。
18.本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
19.应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
20.目前,应用程序大都带有xml配置文件,用来存储一些配置参数和初始设置参数以及一些可能变动的参数,在应用程序的迭代过程中,不可避免地需要调整一些配置参数,例如在xml配置文件中增加、修改或者是删除一些配置项,如果不对xml配置文件进行升级,则软件在交付时就会出现问题。
21.现有技术中在对应用程序进行升级时,一般不会对xml配置文件直接进行升级,而是在应用程序升级完成后,人工通过对比来手动进行修改或者编写与待升级的xml配置文件结构匹配的工具,通过工具来解析xml配置文件,对xml配置文件进行修改。显然,人工处理的方式增加了产品升级的成本,且伴随着应用程序变得越来越庞大、配置参数越来越多、结构也越来越复杂,人工处理的难度变得越来越大,人工处理的效率低且人工处理后配置文件的正确性也无法保证。
22.现有技术中还采用传统的工具对xml配置文件进行升级,是将本次需修改的节点和修改的内容编写进工具里,运行该工具就能实现xml配置文件的升级,虽然能够保证正确性的问题,然而针对不同结构的待升级的xml配置文件,开发人员每次都需要重复编写与待升级的xml配置文件的结构匹配的工具,致使开发人员工作强度大、耗费人力。
23.本发明提供一种xml配置文件升级方法,通过创建兼容多种xml配置文件结构的升级转换文件,由于升级转换文件中定义了所有预设节点的路径信息、变更类型和变更内容,在升级时,只需要在待升级的xml配置文件中查找是否存在待变更的目标节点,若存在,则在原xml配置文件中对目标节点进行更新,解决了现有技术中采用人工比对方式手动升级xml配置文件升级效率低,耗费人力且正确性无法保证的问题,解决了采用传统的工具对配置文件进行升级,无法适用多种结构的xml配置文件,需要重复编写升级工具的问题。
24.在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本发明的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。
25.参照图1,本发明中的xml配置文件升级设备可以包括:处理器1001,例如cpu,网络
接口1004,用户接口1003,存储器1005,通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(display)、输入单元比如键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。存储器1005可以是高速ram存储器,也可以是稳定的存储器(non

volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
26.本领域技术人员可以理解,图1中示出的xml配置文件升级设备并不构成对xml配置文件升级设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
27.如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及计算机程序。
28.在图1所示的xml配置文件升级设备中,网络接口1004主要用于连接服务器,与服务器进行数据通信;用户接口1003主要用于连接客户端,与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的计算机程序,并执行以下操作:在接收到配置文件升级指令时,获取升级转换文件;解析所述升级转换文件,获得预设节点的第一变更说明;获取待升级的原xml配置文件;根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
29.进一步地,所述在接收到配置文件升级指令时,获取升级转换文件的步骤之前,处理器1001可以调用存储器1005中存储的计算机程序,还执行以下操作:根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
30.进一步地,所述第一变更说明包括预设节点的路径信息、变更类型和变更内容;所述解析所述升级转换文件,获得预设节点的第一变更说明的步骤包括:解析所述升级转换文件,获取所述预设节点的路径信息、变更类型和变更内容。
31.进一步地,所述第二变更说明包括目标节点的路径信息、变更类型和变更内容;所述根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明的步骤包括:根据所述第一变更说明中的路径信息,在所述预设节点中确定本次升级中待变更的目标节点;将所述目标节点的路径信息、变更类型和变更内容,确定为本次升级中待变更的目标节点的第二变更说明。
32.进一步地,所述根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件的步骤包括:根据所述第二变更说明中的目标节点的路径信息,利用xpath确定目标节点的位置;
根据所述第二变更说明中的变更类型和变更内容,在所述目标节点的位置进行更新,生成新的xml配置文件。
33.进一步地,所述变更类型包括replace、insert、insertifmissing、remove、removeall。
34.进一步地,本发明还提供一种xml配置文件升级装置,所述xml配置文件升级装置包括:获取模块,用于在接收到配置文件升级指令时,获取升级转换文件;还用于获取待升级的原xml配置文件;解析模块,用于解析所述升级转换文件,获得预设节点的第一变更说明;确定模块,用于根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;更新模块,用于根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
35.进一步地,所述xml配置文件升级装置还包括:创建模块,用于根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
36.本发明还提供一种xml配置文件升级方法,在xml配置文件升级方法的第一实施例中,参照图2,本发明xml配置文件升级方法包括:步骤a10,在接收到配置文件升级指令时,获取升级转换文件;可理解的是,xml是一种可扩展标记语言,是一种用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。
37.xml配置文件,即使用xml语言编写的配置文件,用来存储一些配置参数、初始设置参数以及一些可能变动的参数,在应用程序的迭代过程中,不可避免地需要调整xml配置文件中的配置参数,需要在xml配置文件中增加、修改或者删除一些配置项。
38.升级转换文件,也是使用xml语言编写的文件,用来定义在升级时如何对xml配置文件进行更改。升级转换文件中定义了对多种结构相似的xml配置文件如何进行更改或者根据业务需要定义了对相同业务的xml配置文件如何进行更改,因此升级转换文件可以兼容多种结构的xml配置文件,在对原xml配置文件进行升级时,除非原xml配置文件涉及到的结构或者业务类型升级转换文件中没有覆盖,才需要更新升级转换文件,否则不需要更新升级转换文件,可以适用多种结构相似或业务类型相似的xml配置文件的升级。
39.步骤a20,解析所述升级转换文件,获得预设节点的第一变更说明;可理解的是,第一变更说明包括预设节点的路径信息、变更类型和变更内容,变更类型是指如何变更,包括replace、insert、insertifmissing、remove、removeall,还可以包括其他带有条件的变更类型,例如insertbefore、insertafter、removeattributes、setattributes,变更内容是指变更什么,例如具体的元素,在获取到升级转换文件后,根据xdt:transform、xdt:locator语法,对升级转换文件进行解析,即可解析出预设节点的路径信息、变更类型和变更内容。
40.步骤a30,获取待升级的原xml配置文件;
原xml配置文件,即需要对它进行修改的xml配置文件,也是本次需升级的xml配置文件。
41.步骤a40,根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;可理解的是,第一变更说明包含的是升级转换文件中所有预设节点的路径信息、变更类型和变更内容,目标节点是指本次升级中需变更的节点,第二变更说明包含的是目标节点的路径信息、变更类型和变更内容。
42.可选地,所述根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明的步骤包括:步骤a41,根据所述第一变更说明中的路径信息,在所述预设节点中确定本次升级中待变更的目标节点;可理解的是,由于升级转换文件可以兼容多种结构的xml配置文件,因此升级转换文件中定义了多种结构的xml配置文件的所有节点如何进行变更,因此解析升级转换文件获得的第一变更说明包含的是升级转换文件中所有预设节点的路径信息、变更类型和变更内容,因而本次待升级中原xml配置文件需变更的节点只是第一变更说明中预设节点的一部分,因此,根据第一变更说明中预设节点的路径信息,在本次待升级的原xml配置文件中查找是否存在该预设节点,若存在,则确定该节点为目标节点,例如第一变更说明中包括节点a、b、c、d、e、f 6个预设节点的路径信息、变更类型和变更内容,而本次待升级的原xml配置文件需变更的节点只有b、c、d,通过a节点的路径信息在原xml配置文件中查找是否存在a节点,查找结果是不存在,则继续根据b节点的路径信息在原xml配置文件中查找是否存在b节点,查找结果是存在,则将b节点确定为目标节点,同理确定c、d节点也为目标节点。
43.步骤a42,将所述目标节点的路径信息、变更类型和变更内容,确定为本次升级中待变更的目标节点的第二变更说明。
44.在确定了目标节点后,则将目标节点的路径信息、变更类型和变更内容作为本次升级中待变更的目标节点的第二变更说明,例如第一变更说明中包括节点a、b、c、d、e、f 6个预设节点的路径信息、变更类型和变更内容,目标节点为b、c、d,则将b、c、d节点的路径信息、变更类型和变更内容作为第二变更说明。
45.步骤a50,根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
46.在确定目标节点的第二变更说明后,即可根据第二变更说明对原xml配置文件进行更新,生成新的xml配置文件,以完成xml配置文件的升级。
47.可选地,所述根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件的步骤包括:步骤a51,根据所述第二变更说明中的目标节点的路径信息,利用xpath确定目标节点的位置;可理解的是,第二变更说明中包括目标节点的路径信息,根据目标节点的路径信息,利用xpath可在原xml配置文件中定位目标节点的位置。
48.步骤a52,根据所述第二变更说明中的变更类型和变更内容,在所述目标节点的位置进行更新,生成新的xml配置文件。
49.在确定目标节点的位置后,便可根据第二变更说明中的变更类型和变更内容,在原xml配置文件的目标节点的位置进行更新,若存在多个目标节点,则需要在多个目标节点的位置进行更新,生成新的xml配置文件,即完成了原xml配置文件的升级。
50.本发明提供一种xml配置文件升级方法、装置及可读存储介质,通过在接收到配置文件升级指令时,获取升级转换文件;并解析所述升级转换文件,获得预设节点的第一变更说明;获取待升级的原xml配置文件,根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级;由于升级转换文件中定义了对多种结构的xml配置文件的预设节点如何进行更改,使得升级转换文件可以兼容多种结构的xml配置文件,升级时,只需要在原xml配置文件中查找是否存在该预设节点,若存在,则将该节点作为目标节点,在原xml配置文件中对目标节点进行更新,解决了现有技术中采用人工比对方式手动升级xml配置文件升级效率低,耗费人力且正确性无法保证的问题,解决了采用传统的工具对配置文件进行升级,无法适用多种结构的xml配置文件,需要重复编写升级工具的问题。
51.优选地,在本发明xml配置文件升级方法的另一实施例中,所述在接收到配置文件升级指令时,获取升级转换文件的步骤之前包括:根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
52.需要说明的是,预设节点是指升级转换文件中需包含的多种结构的xml配置文件的所有节点,locator语法用来定义预设节点的位置,locator包含多个子集,这些子集均用来描述预设节点的位置,例如condition、match、xpath子集,condition表示一个匹配条件,会隐式地追加到当前元素的xml表达式来匹配相对应的元素,match表示选择指定的一个或多个特性匹配的一个或多个元素,xpath表示一个匹配条件,与 condition 不同,所指定的表达式不追加到与当前元素对应的隐式 xpath 表达式。
53.transform语法用来定义预设节点的变更类型和变更内容,transform包含多个子集,这些子集均用来描述对预设节点怎么进行更改,例如replace、insert、insertbefore、insertafter、remove、removeall、removeattributes、setattributes子集,replace表示将所选的元素替换为在转换文件中指定的元素,如果选择多个元素,则只替换所选的第一个元素,insert表示将转换文件中定义的元素作为所选的一个或多个元素的同级进行添加,该新元素被添加到任何集合的末尾,insertbefore表示将元素直接插入到xpath 表达式选择的元素之前,insertafter表示将元素直接插入到xpath 表达式选择的元素之后,remove表示移除选定元素,如果选择了多个元素,则移除第一个元素,removeall表示移除选定的一个或多个元素,removeattributes表示从所选元素移除指定的特性,setattributes表示将所选元素的特性设置为指定的值。
54.使用locator语法和transform语法分别创建所有预设节点的位置特性和转换特性,即完成了升级转换文件的创建。
55.通过创建兼容多种xml配置文件结构的升级转换文件,使得升级时可以根据升级转换文件对多种结构的xml配置文件进行升级,无需多次编写升级工具,保证了xml配置文件升级的准确性的同时也提高了升级的效率,降低了人工成本。
56.进一步地,参照图3,本发明实施例还提供一种xml配置文件升级装置,所述xml配置文件升级装置包括:获取模块,用于在接收到配置文件升级指令时,获取升级转换文件;还用于获取待升级的原xml配置文件;解析模块,用于解析所述升级转换文件,获得预设节点的第一变更说明;确定模块,用于根据所述第一变更说明和原xml配置文件,获得本次升级中待变更的目标节点的第二变更说明;更新模块,用于根据所述第二变更说明更新所述原xml配置文件,生成新的xml配置文件,以完成xml配置文件的升级。
57.可选地,所述xml配置文件升级装置还包括:创建模块,用于根据locator语法和transform语法分别创建预设节点的位置特性和转换特性,以创建升级转换文件。
58.本发明xml配置文件升级装置的具体实施方式的拓展内容与上述xml配置文件升级方法各实施例基本相同,在此不做赘述。
59.进一步地,本发明实施例还提出一种xml配置文件升级设备,所述xml配置文件升级设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述xml配置文件升级方法的各实施例的步骤。
60.此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述xml配置文件升级方法的各实施例的步骤。
61.本发明xml配置文件升级设备和计算机可读存储介质的具体实施方式的拓展内容与上述xml配置文件升级方法各实施例基本相同,在此不做赘述。
62.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
63.上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
64.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
65.上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献