应用程序的脚本生成方法、装置及系统与流程

文档序号:35496624发布日期:2023-09-19 23:20阅读:27来源:国知局
应用程序的脚本生成方法、装置及系统与流程

本发明涉及应用程序领域,具体而言,涉及一种应用程序的脚本生成方法、装置及系统。


背景技术:

1、数据库结构变更在软件开发领域是一种很常见的需求。

2、一方面,随着应用程序,即软件或系统版本的不断升级迭代,功能的扩充和改善难以避免会引发原有数据库表结构设计的过时,引发数据库结构变更的需求,需要生成更新脚本,以更新数据库,另一方面,软件开发在设计上常会出现多功能模块共用同一数据库的情况,而不同功能模块的开发人员往往并不相同,加之数据库结构变更工具如开源数据库迁移工具flyway等,多对结构变更存在严格的变更规范和校验约束,多功能模块共用数据库的结构变更工作就变得更易冲突、更难顺利进行。因为相关技术中生成应用程序的脚本时,存在的脚本生成效率低的技术问题。

3、针对上述的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本发明实施例提供了一种应用程序的脚本生成方法、装置及系统,以至少解决相关技术中生成应用程序的脚本时,存在的脚本生成效率低的技术问题。

2、根据本发明实施例的一个方面,提供了一种应用程序的脚本生成方法,包括:获取预定应用程序中多个功能模块分别对应的预定更新数据,以及所述预定更新数据对应的预定更新路径;依据对应的预定更新路径,从所述多个功能模块分别对应的预定更新数据中确定出目标更新数据,以及待合并数据组,其中,所述待合并数据组中包括多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据,所述限定层路径为更新路径中被限定层级的部分路径,所述非限定层路径为所述更新路径中非限定层级的部分路径;将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据;打包所述目标更新数据与所述合并更新数据,得到与所述预定应用程序对应的更新脚本。

3、可选地,所述获取预定应用程序中多个功能模块分别对应的预定更新数据之后,还包括:依据对应的预定更新路径,确定是否存在合并冲突数据组,得到确定结果,其中,所述合并冲突数据组中包括多个对应的预定更新路径一致的更新数据;在所述确定结果为存在合并冲突数据组的情况下,确定对应的预定更新数据是否一致,得到冲突一致性结果;在所述冲突一致性结果为对应的预定更新数据不一致的情况下,发送所述合并冲突数据组至预定终端。

4、可选地,所述将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据,包括:在所述待合并数据组为多类的情况下,依次从多类待合并数据组中确定出目标更新数据组,将所述目标更新数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到中间项合并更新数据,直至得到所述合并更新数据,其中,所述多类待合并数据组分别对应不同的限定层路径,以及非限定层路径。

5、可选地,所述将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据,包括:在更新路径为数据库层至表名层至字段名层,限定层路径为数据库层至表名层的路径,非限定层路径为字段名层的路径的情况下,将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据中,与字段名层对应的字段更新数据的合并,得到所述合并更新数据。

6、可选地,所述将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据,包括:在更新路径为数据库层至表名层至字段名层,所述多类待合并数据组包括一类待合并数据组以及二类待合并数据组的情况下,将所述一类待合并数据组中包括的所述多个对应的一类限定层路径一致,且对应的非一类限定层路径不一致的更新数据中,与字段名层对应的字段更新数据的合并,得到所述中间项更新数据,其中,所述一类限定层路径为数据库层至表名层的路径,非一类限定层路径为字段名层的路径;将所述二类待合并数据组中包括的所述多个对应的二类限定层路径一致,且对应的非二类限定层路径不一致的更新数据中,与表名层对应的表名更新数据的合并,得到所述合并更新数据,其中,所述二类限定层路径为数据库层的路径,非二类限定层路径为表名层至字段名层的路径。

7、可选地,所述打包所述目标更新数据与所述合并更新数据,得到与所述预定应用程序对应的更新脚本之后,还包括:获取所述预定应用程序对应的初始脚本的初始标识码;依据所述初始标识码,确定所述更新脚本的目标标识码。

8、根据本发明实施例的一个方面,提供了一种应用程序的脚本生成装置,包括:获取模块,用于获取预定应用程序中多个功能模块分别对应的预定更新数据,以及所述预定更新数据对应的预定更新路径;确定模块,用于依据对应的预定更新路径,从所述多个功能模块分别对应的预定更新数据中确定出目标更新数据,以及待合并数据组,其中,所述待合并数据组中包括多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据,所述限定层路径为更新路径中被限定层级的部分路径,所述非限定层路径为所述更新路径中非限定层级的部分路径;合并模块,用于将所述待合并数据组中包括的所述多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据;打包模块,用于打包所述目标更新数据与所述合并更新数据,得到与所述预定应用程序对应的更新脚本。

9、根据本发明实施例的一个方面,提供了一种应用程序的脚本生成系统,包括:预定应用程序中多个功能模块分别对应的数据库,所述的应用程序的脚本生成装置。

10、根据本发明实施例的一个方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现上述任一项所述的应用程序的脚本生成方法。

11、根据本发明实施例的一个方面,提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行上述任一项所述的应用程序的脚本生成方法。

12、在本发明实施例中,获取预定应用程序中多个功能模块分别对应的预定更新数据,以及预定更新数据对应的预定更新路径,可以通过对应的预定更新路径,从多个功能模块分别对应的预定更新数据中确定出目标更新数据,以及待合并数据组,其中,目标更新数据表示不需要合并的更新数据,待合并数据组中包括的预定更新数据为需要被合并的更新数据,待合并数据组中包括多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据,此时,将待合并数据组中包括的多个对应的限定层路径一致,且对应的非限定层路径不一致的更新数据合并,得到合并更新数据,打包目标更新数据与合并更新数据,即可达到得到与预定应用程序对应的更新脚本的目的。由于待合并数据组是通过对应的限定层路径一致,且对应的非限定层路径不一致的条件从多个预定更新数据中直接确定出来的,因此,能够快速的确定出需要合并的数据并进行合并,而且在此过程中,只关注更新数据,不关注其他繁琐杂乱的数据,使得打包过程更为迅速,提高了脚本生成的效率,因此,解决了相关技术中生成应用程序的脚本时,存在的脚本生成效率低的技术问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1