一种企业级应用软件升级方法及系统的制作方法

文档序号:6585207阅读:263来源:国知局
专利名称:一种企业级应用软件升级方法及系统的制作方法
技术领域
本发明涉及计算机技术领域,特别是涉及一种企业级应用软件升级方法及系统。
背景技术
随着信息化技术的发展,企业级应用软件产品也得到了空前的发展。企业级应用 软件是面对企业业务服务的系统,会根据用户提出的需求发生改变,所以更新换代频率比 较快。为了能够及时的把企业级应用软件升级到最新版本,通常采用软件升级包的方式来 完成升级。 常规的企业级应用软件升级通常是通过手动比较新旧版本资源包中所有的文件 或者特定目录下的一部分文件来找出两者的不同,再通过覆盖不同文件夹来实现的。例如, 与旧版本资源包相比,新版本资源包的文件夹A中的文件a发生了变化,则用新版本资源 包中的文件夹A覆盖旧版本资源包中的文件夹A即可。传统的升级步骤如下首先,如图1 所示,通过对比低版本企业级应用软件和高版本企业级应用软件得到两者之间的差异资源 包;然后,如图2,利用差异资源包覆盖低版本软件资源包中相应的文件夹,对低版本企业 级应用软件进行升级,最终得到一个较新版本的企业级应用软件。 如果企业级应用软件的功能模块不是很多,更新的频率也不是很频繁,则新旧版 本资源包的改动量一般会比较小,因此,可以使用上述手动比较的方式来实现,因为即使在 每次升级时将新版本中需要更新的文件一一整理,然后发送给需要升级的用户,软件升级 消耗的资源和花费的时间也不会太多。 但随着应用软件的不断发展,这种手动比较的软件升级方法的弊端也越来越明 显。因为企业级应用软件的功能越来越多,新旧版本资源包的文件差异量也会随之不断的 增长,每次更新的文件规模也就相应的扩大。如果采用常规的对比新旧资源包的差异文件 的软件升级方法,到后期每次升级时要变更的文件资源会出现很大的升级包。查找出如此 大量的差异文件就要占用更多的人力、物力资源,并且效率及准确率得不到根本上的保证。

发明内容
有鉴于此,本发明的目的在于提供一种企业级应用软件升级方法及系统,能够提
高企业级应用软件升级的效率及准确率。 为实现上述目的,本发明提供了如下方案 —种企业级应用软件升级方法,包括 比较新版本资源包与原资源包中的资源文件,获得差异资源文件,生成升级资源
包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用于记录所述差
异资源文件的路径及每个差异资源文件对应的操作; 需要升级时,获取所述升级配置文件及所述升级资源包; 解析所述升级配置文件,获取所述操作列表; 根据所述操作列表调用操作对应的方法,对所述路径对应的差异资源文件执行相应的操作,完成企业级应用软件的升级。 优选的,所述升级配置文件还用于记录新版本企业级应用软件的版本号;所述获 取所述操作列表之前还包括 判断所述升级配置文件中的版本号是否大于当前企业级应用软件的版本号,如果 大于,执行所述获取所述操作列表的步骤。
优选的,所述差异资源文件的路径及每个差异资源文件对应的操作包括
在原资源包的某文件夹中添加差异资源文件;
或者, 将原资源包的某文件夹中的差异资源文件删除;
或者, 将原资源包的某文件夹中的差异文件修改为新版本资源包中对应的资源文件。
优选的,还包括 对升级结果进行汇总统计,判断汇总统计结果与升级配置文件中的数据是否一 致; 如果不一致,则记录所述不一致的内容,并提示给用户。
优选的,还包括 将原资源包中所述不一致的资源文件恢复到升级前的状态。
—种企业级应用软件升级系统,包括 比较单元,用于比较新版本资源包与原资源包中的资源文件,获得差异资源文件, 生成升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用 于记录所述差异资源文件的路径及每个差异资源文件对应的操作;
获取单元,用于需要升级时,获取所述升级配置文件及所述差异资源文件;
解析单元,用于解析所述升级配置文件,获取所述操作列表; 操作执行单元,用于根据所述操作列表调用操作对应的方法,对所述路径对应的 差异资源文件执行相应的操作,完成企业级应用软件的升级。 优选的,所述升级配置文件还用于记录新版本企业级应用软件的版本号;所述解 析单元还包括 判断子单元,用于判断所述升级配置文件中的版本号是否大于当前企业级应用软
件的版本号,如果大于,执行所述获取所述操作列表的步骤。 优选的,所述操作执行单元包括 第一执行子单元,用于在原资源包的某文件夹中添加差异资源文件;
或者, 第二执行子单元,用于将原资源包的某文件夹中的差异资源文件删除;
或者, 第三执行子单元,用于将原资源包的某文件夹中的差异文件修改为新版本资源包
中对应的资源文件。 优选的,还包括 汇总单元,用于对升级结果进行汇总统计,判断汇总统计结果与升级配置文件中 的数据是否一致;
提示单元,用于如果不一致,则记录所述不一致的内容,并提示给用户。
优选的,还包括 数据恢复单元,用于将原资源包中所述不一致的资源文件恢复到升级前的状态。
根据本发明提供的具体实施例,本发明公开了以下技术效果 本发明可以自动比较新版本资源包与原资源包中的资源文件,获得差异资源文 件,并生成升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用于记录 所述差异资源文件的路径及每个差异资源文件对应的操作;需要升级时,可以获取并解析 所述升级配置文件,获取所述操作列表;根据所述操作列表调用操作对应的方法,对所述路 径对应的差异资源文件执行相应的操作,完成企业级应用软件的升级。因此,本发明可以达 到自动升级的目的,从而避免了大量的手动文件比较过程,提高企业级应用软件升级的效 率及成功率。 其次,根据版本标识和升级配置文件操作列表的顺序执行,可以处理并发情况下 的升级过程,最大限度的保证升级的稳定性。 另外,还可以统计升级过程中发生冲突的文件资源,对冲突资源进行备份,以方便 用户根据自己的需求来决定是否需要升级,从而加强了升级过程中的可配置性,同时也保 证了升级过程的灵活性。


图1是差异资源包的获取过程示意图; 图2是软件升级过程示意图; 图3是本发明实施例提供的方法的流程图; 图4是本发明实施例提供的方法中升级程序的执行过程流程图;
图5是本发明实施例提供的系统的示意图。
具体实施例方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实 施方式对本发明作进一步详细的说明。 参见图3,本发明实施例提供的企业级应用软件升级方法包括以下步骤 S301 :比较新版本资源包与原资源包中的资源文件,获得差异资源文件, 生成升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操
作列表用于记录所述差异资源文件的路径及每个差异资源文件对应的操作; 本发明实施例使用版本升级功能能够自动把低版本系统升级为高版本系统,这一
过程是通过使用升级配置文件内容来实现的。为此,就要首先比较新版本资源包与原资源
包中的资源文件,并从中获得差异资源文件(新版本资源包与原资源包中不同的资源文
件,例如新版本资源包中新增加的资源文件、删除的资源文件、文件名不变但文件内容发生
变化的资源文件等),并且,还需要把比过程中产生的资源文件的差异记录到特定的升级配
置文件中。在该升级配置文件中记录所述差异资源文件及其路径,以及需要对该资源文件
进行的操作。 之所以要记录差异资源文件的路径,是因为资源包中通常包括多个文件夹,每个
6文件夹还可能包括多个子文件夹,所述差异资源文件仅仅是某个文件夹或子文件夹中的一 个文件;因此,需要标识出所述差异资源文件的路径,以便于升级程序知悉在哪个文件夹下 进行添加资源文件操作、或删除哪个文件夹下的指定资源文件操作等。 例如,如果新版本资源包与原资源包相比,在某文件夹中新增加了某资源文件a,
则可以在所述升级配置文件中指示在该文件夹中添加资源文件a。其中,"资源文件a"就
是指具体的差异资源文件,"在该文件夹中"则指示出了该差异资源文件的路径,当然,如果
该文件夹不在资源包的根目录下,则还可能包括文件夹所在的路径,总之,该路径就是要让
升级程序找到差异资源文件所在的文件夹。在所述升级配置文件中指示具体的操作时,可
以采用在某标志位用预置符号来表示的方法,例如,可以用"A"表示添加、"D"表示删除、"M"
标识修改,等等,可以预先设置并进行定义,使得升级程序能够识别即可。
S 302 :需要升级时,获取所述升级配置文件及所述升级资源包; 进行应用软件升级时,可以采用手动升级或在线升级的方式,在手动升级的方式
下,获取升级配置文件及差异资源文件的方法可以是用户手动下载;在在线升级的方式下,
可以由服务器自动将所述升级配置文件及差异资源文件发送给用户。 另外,在生成所述升级配置文件时,还可以将新增加以及文件名不变但文件内容 发生变化的资源文件生成升级资源包,并将升级配置文件及升级资源包一起打包为升级 包,这样手动下载或服务器发送该升级包,即可以获取到升级配置文件及差异资源文件。
S303 :解析所述升级配置文件,获取所述操作列表; 升级程序可以解析该升级配置文件,并从中获取到操作列表,由于该操作列表中 记录了软件升级过程中需要对哪些差异资源文件执行何种操作,因此,可以根据该操作列 表实现对原资源包的更新,进而完成对应用软件的升级。 S304 :根据所述操作列表调用操作对应的方法,对所述路径对应的差异资源文件 执行相应的操作,完成企业级应用软件的升级。 由于操作列表中记录了软件升级过程中需要对哪些差异资源文件执行何种操作, 包括添加、删除、修改等操作,因此升级程序可以根据预置的定义,识别出操作列表中的操 作标志位符号对应的具体操作,并调用该操作对应的方法,对操作列表中记录的相应的差 异资源文件执行相应的操作。具体的操作可以包括在原资源包的某文件夹中添加差异资 源文件,例如,当发现操作列表中包含添加操作时,根据操作列表中的路径确定该添加操作 对应的差异资源文件所在的文件夹,并在所述升级资源包中找到所述差异资源文件,然后 调用添加方法,执行将所述差异资源文件添加到所述文件夹的操作;或者,将原资源包的某 文件夹中的差异资源文件删除;或者,将原资源包的某文件夹中的差异文件修改为新版本 资源包中对应的资源文件。 另外,在本发明的其他实施例中,在所述升级资源包中保存的也可以是各差异资 源文件所在的文件夹,即当比较获得差异资源文件时,将新版本资源包中差异资源文件所 在的文件夹放入升级资源包中,因此,升级资源包为各个相异的文件夹组成的压縮包。则升 级程序在具体执行操作时,可以包括对升级资源包特定文件夹下比当前版本资源包相应 文件夹中多出的资源文件采用添加操作;对当前版本资源包特定文件夹中比升级资源包相 应文件夹中多出的资源文件采用删除操作;对两者特定文件夹下都含有的文件资源采用修 改动作,可以用升级资源包中的文件夹替换当前版本资源包中相应的文件夹,或者,仅替换
7文件夹中发生变化的资源文件。 另外,由于实际应用中可能存在大量的并发升级的情况,当前的企业级应用程序 相对于获取到的升级包可能并不需要升级。因此还可以在所述升级配置文件中设置新版本 资源包的版本号,在解析出升级配置文件之后,首先判断所述升级配置文件中的版本号是 否大于当前企业级应用软件的版本号,比较后发现两者完全一致说明不需要升级,当前企 业级应用软件系统已经是最新版本。当对比后发现前者大于后者时,则继续执行所述获取 所述操作列表及其后续的步骤。 综上可见,本发明实施例使用版本升级功能把低版本系统升级为高版本系统,这 一过程是通过使用升级包中的升级配置文件内容来实现的,因此,可以达到自动升级的目 的,从而避免了大量的手动文件比较过程,提高企业级应用软件升级的效率及成功率。
由于在实际应用中,企业级应用软件的用户可以根据自己的需要修改该软件资源 包中的文件,例如,用户可以根据实际需要对软件进行不同的配置,包括更改一些参数等 等,这些配置作为用户的自定义配置,对于不同的用户具有个性化的特点,因此,为了不影 响用户的体验,不应该随便对其进行更改。但是在比对获取差异资源文件时,是利用用户进 行自定义修改前的资源包进行比对的,因此,这就会产生这样一种情况用户正好是对所述 差异资源文件进行过修改,例如,在比对过程中发现需要修改某资源文件的内容,但是用户 之前已经对该资源文件的内容进行了修改,使得资源文件发生冲突。此时,如果直接将该资 源文件的内容修改为新版本中该资源文件的内容,则会使得用户之前的修改失效,用户设 置的效果也将会不复存在,这样可能会影响用户的体验,甚至影响用户的正常工作。
因此,在本发明实施例中,还可以对升级结果进行汇总统计,判断汇总统计结果与 升级配置文件中的数据是否相同,如果相同,则证明升级结果与预期一致,升级成功;但是, 如果不相同,则证明资源文件有冲突,用户对资源包进行过修改。此时,可以把冲突的内容 做好就并备份以便用户确认。例如,可以将冲突的内容提示给用户,由用户选择是否进行资 源文件的更新,或者可以手动进行更新等等。 发生冲突时,为了不对用户的自定义设置产生影B向,如果已经进行了资源文件的 操作,还可以将原资源包中所述不一致的资源文件恢复到升级前的状态,这样用户原来设 置的数据不会被覆盖,用户可以根据提示进行手动升级等操作。
其中,所述发生冲突的情况还可能包括以下情况 进行添加操作时发现当前资源包中已经存在了要添加的目标资源文件,或者,进 行删除操作时发现当前资源包中不存在要删除的目标资源文件等。 为了更好地理解本发明实施例提供的方法,下面通过具体应用中的例子,对升级 程序执行软件升级的步骤进行详细地描述。
参见图4,该方法可以包括以下步骤
S401 :加载资源升级包和升级配置文件; S402 :比较升级资源包和当前企业级应用软件中的版本信息是否一致;如果两者 完全一致说明不需要升级,当前企业级应用软件系统已经是最新版本,进入步骤S408;当 对比后发现不一致,即存在差异时进入步骤S403 ; S403 :取出当前企业级应用软件的版本号程序,并解析出升级包中的配置文件,取 出升级的文件列表;
S404:判断当前升级资源包中的版本号是否大于当前企业级应用软件的版本号, 当发现结果小于当前企业级应用软件版本号时,说明当前应用软件版本高于升级资源包中 的版本,因此不需要进行升级操作,进入步骤S408 ;当结果大于当前企业级应用软件的版 本号时,说明应该进行相关升级,进入步骤S405 ; S405 :根据升级配置文件中不同的操作符对相关文件进行操作;其中有添加、删 除、修改三个操作动作; S406 :通过汇总统计的过程来判断升级是否和预期升级配置文件中的数据一致; 如果汇总的统计结果和预期升级配置文件中的数据一致,则表示升级成功,进入步骤S408, 记录下升级后当前企业级应用软件系统的版本号;如果汇总结果与预期升级配置文件中的 数据不一致,这时说明资源文件有冲突,进入步骤S407 ; S407 :生成冲突文件列表并备份冲突文件,以便用户确认或进行手工升级;
S408 :记录升级资源包的版本号,结束升级。 总之,本发明实施例中,通过升级配置文件和对它的解析过程来替代升级过程中 复杂的文件资源比较和判断逻辑;通过定义操作动作来保证快速有效地进行升级工作;另 外,对于和预期不一致的资源采用统计和记录功能来保证升级的灵活性和稳定性。
与本发明实施例提供的企业级应用软件升级方法相对应,本发明实施例还提供了 一种企业级应用软件升级系统,参见图5,该系统包括 比较单元U501,用于比较新版本资源包与原资源包中的资源文件,获得差异资源
文件,生成升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作
列表用于记录所述差异资源文件的路径及每个差异资源文件对应的操作; 获取单元U502,用于需要升级时,获取所述升级配置文件及所述差异资源文件; 解析单元U503,用于解析所述升级配置文件,获取所述操作列表; 操作执行单元U504,用于根据所述操作列表调用操作对应的方法,对所述路径对
应的差异资源文件执行相应的操作,完成企业级应用软件的升级。 其中,所述升级配置文件还用于记录新版本企业级应用软件的版本号;解析单元 U503还可以包括 判断单子元,用于判断所述升级配置文件中的版本号是否大于当前企业级应用软
件的版本号,如果大于,执行所述获取所述操作列表的步骤。 具体的,操作执行单元U504可以包括 第一执行子单元,用于在原资源包的某文件夹中添加差异资源文件;
或者, 第二执行子单元,用于将原资源包的某文件夹中的差异资源文件删除;
或者, 第三执行子单元,用于将原资源包的某文件夹中的差异文件修改为新版本资源包 中对应的资源文件。 本发明实施例还可以统计升级过程中发生冲突的资源文件,对资源文件进行备 份,以方便用户根据自己的需求来决定是否需要升级;此时,该系统还包括
汇总单元,用于对升级结果进行汇总统计,判断汇总统计结果与升级配置文件中 的数据是否相同;
提示单元,用于如果不相同,则记录所述不相同的内容,并提示给用户。
发生冲突时,为了不至于对用户的自定义设置产生影响,该系统还可以包括 数据恢复单元,用于将原资源包中所述不一致的资源文件恢复到升级前的状态。 可见,本发明实施例中,通过升级配置文件和对它的解析过程来替代升级过程中
复杂的文件资源比较和判断逻辑;通过定义操作动作来保证快速有效地进行升级工作;另
外,对于和预期不一致的资源采用统计和记录功能来保证升级的灵活性和稳定性。 以上对本发明所提供的一种企业级应用软件升级方法及系统,进行了详细介绍,
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用
于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的
思想,在具体实施方式
及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为
对本发明的限制。
权利要求
一种企业级应用软件升级方法,其特征在于,包括比较新版本资源包与原资源包中的资源文件,获得差异资源文件,生成升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用于记录所述差异资源文件的路径及每个差异资源文件对应的操作;需要升级时,获取所述升级配置文件及所述升级资源包;解析所述升级配置文件,获取所述操作列表;根据所述操作列表调用操作对应的方法,对所述路径对应的差异资源文件执行相应的操作,完成企业级应用软件的升级。
2. 根据权利要求1所述的方法,其特征在于,所述升级配置文件还用于记录新版本企 业级应用软件的版本号;所述获取所述操作列表之前还包括判断所述升级配置文件中的版本号是否大于当前企业级应用软件的版本号,如果大 于,执行所述获取所述操作列表的步骤。
3. 根据权利要求1所述的方法,其特征在于,所述差异资源文件的路径及每个差异资 源文件对应的操作包括在原资源包的某文件夹中添加差异资源文件; 或者,将原资源包的某文件夹中的差异资源文件删除; 或者,将原资源包的某文件夹中的差异文件修改为新版本资源包中对应的资源文件。
4. 根据权利要求l所述的方法,其特征在于,还包括对升级结果进行汇总统计,判断汇总统计结果与升级配置文件中的数据是否一致; 如果不一致,则记录所述不一致的内容,并提示给用户。
5. 根据权利要求4所述的方法,其特征在于,还包括 将原资源包中所述不一致的资源文件恢复到升级前的状态。
6. —种企业级应用软件升级系统,其特征在于,包括比较单元,用于比较新版本资源包与原资源包中的资源文件,获得差异资源文件,生成 升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用于记 录所述差异资源文件的路径及每个差异资源文件对应的操作;获取单元,用于需要升级时,获取所述升级配置文件及所述差异资源文件;解析单元,用于解析所述升级配置文件,获取所述操作列表;操作执行单元,用于根据所述操作列表调用操作对应的方法,对所述路径对应的差异 资源文件执行相应的操作,完成企业级应用软件的升级。
7. 根据权利要求6所述的系统,其特征在于,所述升级配置文件还用于记录新版本企 业级应用软件的版本号;所述解析单元还包括判断子单元,用于判断所述升级配置文件中的版本号是否大于当前企业级应用软件的 版本号,如果大于,执行所述获取所述操作列表的步骤。
8. 根据权利要求6所述的系统,其特征在于,所述操作执行单元包括第一执行子单元,用于在原资源包的某文件夹中添加差异资源文件; 或者,第二执行子单元,用于将原资源包的某文件夹中的差异资源文件删除; 或者,第三执行子单元,用于将原资源包的某文件夹中的差异文件修改为新版本资源包中对 应的资源文件。
9. 根据权利要求6所述的系统,其特征在于,还包括汇总单元,用于对升级结果进行汇总统计,判断汇总统计结果与升级配置文件中的数 据是否一致;提示单元,用于如果不一致,则记录所述不一致的内容,并提示给用户。
10. 根据权利要求9所述的系统,其特征在于,还包括数据恢复单元,用于将原资源包中所述不一致的资源文件恢复到升级前的状态。
全文摘要
本发明公开了一种企业级应用软件升级方法,该方法包括比较新版本资源包与原资源包中的资源文件,获得差异资源文件,生成升级资源包及升级配置文件;所述升级配置文件用于记录操作列表;所述操作列表用于记录所述差异资源文件的路径及每个差异资源文件对应的操作;需要升级时,获取所述升级配置文件及所述升级资源包;解析所述升级配置文件,获取所述操作列表;根据所述操作列表调用操作对应的方法,对所述路径对应的差异资源文件执行相应的操作,完成企业级应用软件的升级。本发明可以达到自动升级的目的,从而避免了大量的手动文件比较过程,提高企业级应用软件升级的效率及成功率。
文档编号G06F9/445GK101739278SQ20091024278
公开日2010年6月16日 申请日期2009年12月17日 优先权日2009年12月17日
发明者尚枫, 方国, 王宇飞, 罗华永 申请人:中国电力科学研究院;国家电网公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1