本发明涉及软件开发,更具体的,涉及一种低代码项目的导出方法及系统。
背景技术:
1、在现代软件开发实践中,低代码平台(low-code platform)已成为提高开发效率和降低技术门槛的关键工具;这些平台允许用户通过图形化界面和少量编码快速构建应用程序;然而,随着低代码平台运行环境的多变和复杂,如何高效、安全地复制项目到各个环境成为了一个新的挑战;现有的导出方法往往缺乏标准化,导致在不同环境和平台上部署时出现兼容性问题。
2、因此,现有技术存在缺陷,亟待改进。
技术实现思路
1、鉴于上述问题,本发明的目的是提供一种低代码项目的导出方法及系统,能够降低项目成本及提高效率。
2、本发明第一方面提供了一种低代码项目的导出方法,包括:
3、获取自描述文件信息;
4、提取自描述文件中的项目元信息;
5、将自描述文件中的项目元信息发送至对象存储中,并基于预设的导出项目的主控程序进行信息广播;
6、当微服务接收到项目元信息之后,基于项目元信息匹配对应微服务需要导出的内容;
7、将微服务需要导出的内容上传至对应的对象存储位置,上传完成之后通知主控程序;
8、当所有微服务需要导出的内容完成上传之后,将所有的对象存储资源进行打包成zip文件,得到导出文件。
9、本方案中,所述基于预设的导出项目的主控程序进行信息广播的步骤,具体包括:
10、将自描述文件中的项目元信息按照段落进行划分,得到多个子项目元信息;
11、将子项目元信息依次和预设微服务内容信息进行对比分析,得到第一相似值;
12、若第一相似值大于或等于预设第一相似阈值,则提取第一相似值对应的预设微服务内容信息,并根据第一相似值对应的预设微服务内容信息,得到对应的微服务名称及所在位置;
13、根据对应的微服务名称及所在位置,预设的导出项目的主控程序将对应子项目元信息进行点对点广播。
14、本方案中,所述将子项目元信息依次和预设微服务内容信息进行对比分析,得到第一相似值的步骤,具体包括:
15、提取子项目元信息中的关键词,提取预设的微服务内容信息中的关键词,并将预设的微服务内容信息中的关键词划分为主关键词和次关键次;
16、将子项目元信息中的关键词和预设的微服务内容信息中的关键词进行对比分析,若存在相同,则提取对应相同关键词;
17、根据相同关键词在预设的相同关键词分值表格中查询,得到对应相同关键词的分值;
18、若存在多个相同关键词,则根据对应相同关键词中的关键词,确定对应相同关键词的叠加系数;
19、提取相同关键词的分数中的最大分值,将其他分数乘以对应关键词的叠加系数,和最大分数进行累加,得到子项目元信息和预设的微服务内容信息的相似分值;
20、当项目元信息和预设的微服务内容信息的相似分值大于或等于预设第一相似分值时,将对应第一相似值设为100%;
21、当项目元信息和预设的微服务内容信息的相似分值小于预设第一相似分值时,所述第一相似值等于项目元信息和预设的微服务内容信息的相似分值除以预设第一相似分值。
22、本方案中,所述基于预设的导出项目的主控程序进行信息广播之后,还包括:
23、预设时间感应器开始记录时间,记为项目导出持续时间;
24、若项目导出持续时间大于预设第一时间之后,微服务需要导出的内容还未上传完成,则提取未上传完成的微服务;
25、将未上传完成的微服务名称发送至预设管理端以进行显示。
26、本方案中,所述将微服务需要导出的内容上传至对应的对象存储位置之前,还包括:
27、若一个项目子元信息匹配多个微服务需要导出的内容时,将对应微服务需要导出的内容设为伪内容;
28、将伪内容依次和其他项目子元信息匹配的微服务需要导出的内容进行对比分析,得到多个关联度值;
29、将多个关联度值按照从大到小的顺序依次排列,并提取最大关联度值对应的伪内容;
30、将所述最大关联度值对应的伪内容设为对应项目子元信息所需要的导出内容。
31、本方案中,所述将伪内容依次和其他项目子元信息匹配的微服务需要导出的内容进行对比分析,得到多个关联度值的步骤,具体包括:
32、获取历史自描述文件信息;
33、将历史自描述文件信息和历史网络环境信息;
34、将历史自描述文件信息和当前自描述文件信息进行对比分析,得到第二相似值;
35、获取当前网络环境信息;
36、将历史网络环境信息和当前网络环境信息进行对比分析,得到第三相似值;
37、若第二相似值大于预设第二相似值阈值,且第三相似值大于预设第三相似阈值时,提取第二相似值对应的历史自描述文件信息;
38、根据第二相似值对应的历史自描述文件信息,得到对应历史导出内容;
39、将历史导出内容按照不同微服务进行划分,得到不同历史微服务的导出内容;
40、将关联度值设为p,其公式为,其中表示编号为n的伪内容和其他项目子元信息匹配的微服务需要导出的内容的关联度,n为伪内容的编号,m为其他项目子元信息匹配的微服务需要导出的内容的编号,表示编号为n的伪内容和编号为m的其他项目子元信息匹配的微服务需要导出的内容一起出现的次数,表示历史伪内容的编号,表示历史微服务的导出内容的编号;表示编号为的历史伪内容和编号为的历史微服务的导出内容同时出现的总次数,s表示的累计值。
41、本方案中,所述将微服务需要导出的内容上传至对应的对象存储位置的步骤,具体包括:
42、根据自描述文件信息,得到导入环境下的程序版本号;
43、提取项目元信息匹配的微服务,并根据项目元信息匹配的微服务,得到对应微服务的程序版本号;
44、将导入环境下的程序版本号和微服务的程序版本号进行对比分析,若对应微服务的程序版本号兼容导入环境下的程序版本号,则将对应微服务需要导出的内容直接上传至对应的对象存储位置;
45、若对应微服务的程序版本号不兼容导入环境下的程序版本号,则生成版本转换信息;
46、基于版本转换信息,将对应微服务需要导出的内容按照导入环境下的程序版本号的格式进行转换,并上传至对应的对象存储位置。
47、本方案中,所述将对应微服务需要导出的内容按照导入环境下的程序版本号的格式进行转换之后,还包括:
48、将对应微服务进行标记,并记录对应微服务被标记的次数值;
49、当微服务被标记的次数值大于预设次数阈值时,生成对应微服务的版本号更新提示信息;
50、将所述微服务的版本号更新提示信息发送至预设管理端以进行显示。
51、本方案中,所述上传完成之后通知主控程序的步骤,具体包括:
52、提取自描述文件中的项目元信息中需要导出的项目;
53、将需要导出的项目依次编号并排序,构建导出项目目录,并发送至对象存储;
54、将导出项目目录划分为多个导出项目子目录,并在对应导出项目子目录中构建识别标识;
55、当微服务需要导出的内容上传至对应的对象存储位置时,根据对应微服务在预设标识表格中查询,得到微服务的标识;
56、若微服务的标识和导出项目子目录中的识别标识一致,则将对应导出项目子目录中的识别标识进行激活;
57、若所有导出项目子目录中的识别标识被激活,则当前导出项目完成,并生成上传完成信息,并将所述上传完成信息发送至导出项目的主控程序端。
58、本发明第二方面提供了一种低代码项目的导出系统,包括存储器和处理器,所述存储器中存储有一种低代码项目的导出方法程序。
59、本发明公开的一种低代码项目的导出方法及系统,可以让项目的交付团队在公有云的低代码平台上实现软件的开发,然后通过导出程序导出成zip包, 最终在内网等各个环境下实现项目导入,能降低项目成本及提高效率。