CN111596965B - 项目工程初始化方法、装置、计算机设备和存储介质 - Google Patents

项目工程初始化方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111596965B
CN111596965B CN202010707620.4A CN202010707620A CN111596965B CN 111596965 B CN111596965 B CN 111596965B CN 202010707620 A CN202010707620 A CN 202010707620A CN 111596965 B CN111596965 B CN 111596965B
Authority
CN
China
Prior art keywords
project
components
modules
code
version number
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.)
Active
Application number
CN202010707620.4A
Other languages
English (en)
Other versions
CN111596965A (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.)
Taiping Finance Technology Services Shanghai Co ltd
Original Assignee
Taiping Finance Technology Services Shanghai Co 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 Taiping Finance Technology Services Shanghai Co ltd filed Critical Taiping Finance Technology Services Shanghai Co ltd
Priority to CN202010707620.4A priority Critical patent/CN111596965B/zh
Publication of CN111596965A publication Critical patent/CN111596965A/zh
Application granted granted Critical
Publication of CN111596965B publication Critical patent/CN111596965B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Abstract

本申请涉及一种项目工程初始化方法、装置、计算机设备和存储介质。所述方法包括:接收项目工程初始化指令,并根据所述项目工程初始化指令显示项目信息输入页面;通过所述项目信息输入页面接收输入的项目基本信息;通过所述项目信息输入页面接收所选择的项目子模块和组件;通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;根据所述项目子模块和组件从服务器获取对应的目标依赖包;根据所述代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及所述目标依赖包打包得到初始化压缩包。采用本方法能够提高初始化的效率。

Description

项目工程初始化方法、装置、计算机设备和存储介质
技术领域
本申请涉及计算机技术领域,特别是涉及一种项目工程初始化方法、装置、计算机设备和存储介质。
背景技术
随着微服务框架Spring Cloud的成熟和推广,Spring Cloud的开源社区活跃度较高,版本更新比较频繁;同时,框架相关的技术组件比较丰富,迭代更替也比较频繁。开发人员在启动新项目开发的时候,需要确定Spring Cloud基础版本、相关技术组件和中间件版本等信息,保证系统的兼容性。
传统技术中,Spring官方的Spring Initializr项目模板自动初始化工具,其可以让使用者选择项目构建类型(Maven和Gradle)、编程语言(Java、Kotlin和Groovy)、SpringBoot版本等项目基本信息,以及相关组件,生成初始化工程压缩包供使用者下载。
然而,目前的通过官方的Spring Initializr项目模板自动初始化工具进行初始化后,其生成的代码主要包括Maven依赖定义文件pom.xml,以及工程启动类。对于初始化的其他方面的内容,需要使用者投入大量的精力进行手动修改,例如根据工程的需要手动在代码中修改对应的内容,这不仅需要使用者精通Spring Initializr项目模板自动初始化工具,还需要使用者花费大量的时间一行一行地进行查看修改,这样导致项目工程初始化效率降低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高初始化效率的项目工程初始化方法、装置、计算机设备和存储介质。
一种项目工程初始化方法,所述方法包括:
接收项目工程初始化指令,并根据所述项目工程初始化指令显示项目信息输入页面;
通过所述项目信息输入页面接收输入的项目基本信息;
通过所述项目信息输入页面接收所选择的项目子模块和组件,所述项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的;所述项目信息输入页面中显示的项目子模块以及组件是对应项目工程的开发文档中的项目子模块和组件;
通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;
根据所述项目子模块和组件从服务器获取对应的目标依赖包;
根据所述代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及所述目标依赖包打包得到初始化压缩包。
在其中一个实施例中,所述根据所述项目子模块和组件从服务器获取对应的目标依赖包,包括:
从服务器获取分别与所述项目子模块和组件对应的初始依赖包;
对所述初始依赖包进行去重操作后得到目标依赖包。
在其中一个实施例中,所述通过所述项目信息输入页面接收输入的项目基本信息之后,还包括:
从所述项目基本信息提取第一框架版本号;
将所述第一框架版本号发送至服务器,以使得服务器查询与所述第一框架版本号对应的第二框架版本号,并通过异步方式将所述第二框架版本号返回;
所述通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构,包括:
获取预设代码规范;
通过文件IO操作方式按照所述预设代码规范,根据所述项目基本信息、所述项目子模块以及组件以及所述第二框架版本号生成代码目录结构。
在其中一个实施例中,所述通过异步方式将所述第二框架版本号返回之后,还包括:
接收针对所述第二框架版本号的调整指令,所述调整指令携带有调整后的调整版本号;
将所述调整版本号发送给服务器,以使得所述服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断所述调整版本号与所述第一框架版本号是否兼容,并得到判断结果;
异步接收所述服务器返回的判断结果,并显示。
在其中一个实施例中,所述代码包结构的生成方式包括:
获取预设技术规范;
通过文件IO操作方式根据所述技术规范生成所述代码包结构。
在其中一个实施例中,所述通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件之前,还包括:
通过所述项目信息输入页面接收所述组件对应的配置参数;
所述配置文件的生成方式包括:
通过文件IO操作方式生成与所述第二框架版本号对应的标准配置文件;
将所述配置参数和对应的组件关联输入至所述标准配置文件中的配置项键值对中。
在其中一个实施例中,所述项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的。
一种项目工程初始化装置,所述装置包括:
第一接收模块,用于接收项目工程初始化指令,并根据所述项目工程初始化指令显示项目信息输入页面;
第二接收模块,用于通过所述项目信息输入页面接收输入的项目基本信息;
第三接收模块,用于通过所述项目信息输入页面接收所选择的项目子模块和组件,所述项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的;所述项目信息输入页面中显示的项目子模块以及组件是对应项目工程的开发文档中的项目子模块和组件;
生成模块,用于通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;
依赖包获取模块,用于根据所述项目子模块和组件从服务器获取对应的目标依赖包;
打包初始化模块,用于根据所述代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及所述目标依赖包打包得到初始化压缩包。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法的步骤。
上述项目工程初始化方法、装置、计算机设备和存储介质,终端在接收了项目基本信息、项目子模块和组件后,可以通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件,并获取到目标依赖包,最后打包得到初始化压缩包,而不再需要用户一个个地去配置,减轻了用户工作量,从而提高了效率。
附图说明
图1为一个实施例中项目工程初始化方法的应用环境图;
图2为一个实施例中项目工程初始化方法的流程示意图;
图3为一个实施例中的项目信息输入页面的界面图;
图4为一个实施例中的项目工程初始化方法的时序图;
图5为一个实施例中的项目基本信息输入页面的页面图;
图6为一个实施例中的项目子模块的显示页面图;
图7为一个实施例中的组件的显示页面图;
图8为一个实施例中项目工程初始化装置的结构框图;
图9为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的项目工程初始化方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104进行通信。其中,终端102可以接收到项目工程初始化指令,这样终端102即可以显示对应的项目信息输入页面,该输入页面中可以包括项目基本信息输入项以及项目子模块和组件的选择项等,终端102根据输入的项目基本信息、项目子模块以及组件通过文件IO操作方式生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件,并且从服务器104获取到项目子模块和组件对应的目标依赖包,这样终端102根据代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包打包得到初始化压缩包,从而终端102存储该初始压缩包后,用户终端可以下载该初始压缩包。这样不再需要用户一个个地去配置,减轻了用户工作量,从而提高了效率。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种项目工程初始化方法,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
S202:接收项目工程初始化指令,并根据项目工程初始化指令显示项目信息输入页面。
具体地,项目工程初始化指令可以是指终端接收的打开项目工程初始化工具的指令,例如在终端的显示页面可以显示该项目工程初始化工具的快捷键或图标等,用户通过操作鼠标或者是光标对该快捷键或图标进行点击操作,从而终端根据该点击操作显示项目信息输入页面。
具体地,该项目信息输入页面可以是包括至少一个页面,例如项目基本信息为一个页面,项目子模块为一个页面、组件为一个页面等。终端可以通过依次显示项目基本信息页面、项目子模块页面以及组件页面来引导用户对应输入信息。
S204:通过项目信息输入页面接收输入的项目基本信息。
S206:通过项目信息输入页面接收所选择的项目子模块和组件。
具体地,项目基本信息包括但不限于JDK版本、第一框架版本号(Spring Cloud版本)、Maven坐标(Group/Artifact)、工程Java包名等。项目子模块包括但不限于注册中心、配置中心、负载均衡、REST客户端、熔断限流、服务监控、网关和链路跟踪等。组件包括但不限于ORM框架、数据库、数据库连接池、集中式缓存、消息中间件等。项目信息输入页面包括以列表方式排列的各个项目基本信息字段以及对应的输入项,和/或通过下拉框进行选择或通过列表进行录入的项目子模块和组件。
终端可以分页面显示上述项目基本信息、项目子模块以及组件,例如在项目基本信息页面按照一定顺序显示项目基本信息,并提供录入功能,在项目子模块页面和/或组件页面提供下拉框选择对应的项目子模块以及组件,此外还可以提供录入功能。另外终端还可以提供项目子模块和/或组件的添加功能,具体可以参见图3所示,当终端接收到项目子模块和/或组件的添加指令时,则新增一行记录,并提供下拉框或者是录入功能以供用户进行项目子模块和/或组件的选择。
可选地,由于Spring Initializr是针对整个Spring生态圈(不限于Spring Cloud框架),待选择组件的分类和明细覆盖面太广,不便于使用者的选择和操作,为了提高选择的效率,项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的,例如终端可以预先统计各个项目子模块以及组件的历史使用次数,这样按照历史使用次数显示项目子模块和组件,以提高用户选择的效率,此外,终端还可以预先获取到本次项目开发的开发文档,从中查询所需要的项目子模块和组件,这样当终端接收到项目基本信息后,则可以根据项目基本信息查询到对应的项目子模块和组件,并优先显示该些项目子模块和组件,以提高用户的选择效率,即限定了项目子模块和组件的内容。这样项目信息输入页面的子模块和相关组件清单围绕SpringCloud框架和预设技术选型进行选择,范围更精简。其中终端从开发文档中查询所需要的项目子模块和组件的方法可以包括提取开发文档中的各级题目,并将各级题目与项目子模块和组件的总列表进行匹配,将匹配成功的项目子模块和组件作为查询的所需要的项目子模块和组件。上述实施例中,还可以首先根据开发文档获取显示内容,然后通过预设技术选型、以及项目子模块以及组件的使用频率的限定项目子模块和组件的显示顺序,这样减少了显示内容且提高了选择效率。
此外,上述的项目子模块以及组件可以根据实际需要选择0或者多项,在此不做具体的限制。
其中,上文中的项目基本信息、项目子模块以及组件都是通过网页的页面的形式进行录入,这样不需要用户在代码层级进行修改,效率更快,且网页页面上所显示的项目子模块和组件是预先根据开发文档进行筛选的,这样可以进一步提高效率。
S208:通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件。
传统地,当使用者选择项目基本信息和相关组件后,Spring Initializr生成的代码主要包括Maven依赖定义文件pom.xml,以及工程启动类。在代码目录结构、代码包结构、接口桩代码、相关组件的配置文件等方面,没有提供相应的模板文件,仍需使用者投入较多的精力用于工程初始化。
而在本实施例中,终端可以通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件。
其中代码目录结构是指按照层级关系所显示的代码的名称的结构,代码包结构是指根据工程包名生成的包结构前缀,接口桩代码是指用来代替某些代码的代码,例如,产品函数或测试函数调用了一个未编写的函数,可以编写桩函数来代替该被调用的函数,桩代码也用于实现测试隔离。配置文件则是指包含项目子模块和组件的各个配置项和/或参数的文件。
其中终端可以获取到预设代码规范,该预设代码规范中给出了标准代码目录结构的,这样终端首先获取到该标准代码目录结构,然后以文件IO操作方式,也就是说按指定的参数格式输出文件内容,其中指定的参数格式则是标准代码目录结构中规定的,这样通过统一的标准代码目录结构生成工程,便于对代码的规范,以及后续出错的查找等。
代码包结构也是预先存储在预设代码规范中的,例如web、service、dao、dto、model、vo、util等前缀,终端则根据该预设代码规范中的工程包名生成包结构前缀。
配置文件也是预先存储在预设代码规范中的,其给出了对应的项目子模块和组件所包含的所有的配置项,而参数则可以由用户输入或者是空,这样待生成初始化压缩包后,用户可以针对对应的配置文件中的参数进行输入或修改等。
S210:根据项目子模块和组件从服务器获取对应的目标依赖包。
具体地, Spring Cloud子模块和Maven POM文件中starter依赖包的对应关系维护在工具服务器,这样当用户选择了对应的项目子模块和组件后,终端可以根据该项目子模块和组件从服务器获取到对应的目标依赖包。
S212:根据代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包打包得到初始化压缩包。
具体地,终端生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包后,则将该些内容进行打包即可以得到初始化压缩包。例如使用者对上述项目基本信息、项目子模块以及组件确认完毕后,点击“生成”按钮,则终端中的工具根据采集的信息,生成初始化压缩包进行存储,且该初始化压缩包可以由使用者下载到本地。其中Maven POM文件包含Spring Coud和Spring Boot的版本信息,以及Spring Cloud子模块对应的starter依赖包信息。
上述项目工程初始化方法,终端在接收了项目基本信息、项目子模块和组件后,可以通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件,并获取到目标依赖包,最后打包得到初始化压缩包,而不再需要用户一个个地去配置,减轻了用户工作量,从而提高了效率。
在其中一个实施例中,根据项目子模块和组件从服务器获取对应的目标依赖包,包括:从服务器获取分别与项目子模块和组件对应的初始依赖包;对初始依赖包进行去重操作后得到目标依赖包。
具体地,用户选择的多个Spring项目子模块和相关组件(如A和B),可能包含同一个Maven POM文件的starter依赖包,直接的汇总可能会有重复,所以需要去重。
且为了减少操作,终端可以首先从服务器获取分别与每一个项目子模块和组件对应的初始依赖包,然后通过使用者在项目信息输入页面选择的项目子模块和组件清单经匹配和去重后添加到Maven POM文件。
上述实施例中,统一对项目子模块和组件对应的依赖包进行去重处理,精简了Maven POM文件,上述实施例中,当使用者选择需要引入的Spring Cloud子模块后,终端自动将对应的starter依赖包添加到Maven POM文件,减轻使用者开发调试的工作量。
在其中一个实施例中,通过项目信息输入页面接收输入的项目基本信息之后,还包括:从项目基本信息提取第一框架版本号;将第一框架版本号发送至服务器,以使得服务器查询与第一框架版本号对应的第二框架版本号,并通过异步方式将第二框架版本号返回。从而通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构,包括:获取预设代码规范;通过文件IO操作方式按照预设代码规范,根据项目基本信息、项目子模块以及组件以及第二框架版本号生成代码目录结构。
在其中一个实施例中,通过异步方式将第二框架版本号返回之后,还包括:接收针对第二框架版本号的调整指令,调整指令携带有调整后的调整版本号;将调整版本号发送给服务器,以使得服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断调整版本号与第一框架版本号是否兼容,并得到判断结果;异步接收服务器返回的判断结果,并显示。
具体地,该步骤为对第二框架版本号,即Spring Boot的版本号进行调整的步骤,其为可选步骤。工具服务器维护有Spring Cloud和Spring Boot版本对应关系(参考Spring官方),工具默认提供官方的版本对应关系,如使用者确实有特殊的版本修改需求,可以手动修改Spring Boot版本,工具会根据Spring Boot版本号命名规则做兼容性校验,如发现存在版本不兼容风险,会在页面提示使用者。
Spring Cloud子模块的清单和版本参考Spring官方提供的兼容性信息,以及公司的技术选型,在服务器维护;相关组件的清单和版本参考Spring官方提供的兼容性信息,以及公司基础运维部门提供的信息,在服务器维护。
具体地,可以分为两种操作方式,包括对第二框架版本号的选择方式以及对第二框架版本号的修改方式:
对第二框架版本号的选择方式是:在使用者选择Spring Cloud版本后,服务器基于从Spring官方获取、定期维护的Spring Cloud和Spring Boot版本对应关系,获得对应的Spring Boot版本信息,通过Ajax请求的方式返回给工具页面。这里之所以采用Ajax异步方式是因为用户在工具前端页面做Spring Cloud版本选择操作后,触发下拉框的onchange事件,对工具后端进行请求,查询匹配的相关组件版本信息,使用异步是为了保证工具前端页面不刷新。
对第二框架版本号的修改方式是:如果使用者通过手动方式对Spring Boot版本号进行调整,服务器基于Spring Boot版本号命名规则判断此版本与使用者之前选择的Spring Cloud版本的兼容性,相应地通过Ajax请求的方式返回相应的提示信息给工具页面。
上述实施例中,围绕Spring Cloud框架为核心,Spring Boot版本适配SpringCloud版本,而非是传统技术中以Spring Boot为核心,由使用者指定Spring Boot版本适配的Spring Cloud版本,这样更适用于以Spring Cloud为基础的项目开发,用户在操作页面选择Spring Cloud版本后,工具自动带出对应的Spring Boot版本信息,方便对项目SpringCloud版本的统一(Spring Initializr以Spring Boot为核心,如使用者对Spring Cloud和Spring Boot版本对应关系不熟悉,较随意地选择了Spring Boot版本,可能造成适配的Spring Cloud版本不合适)。
在其中一个实施例中,代码包结构的生成方式包括:获取预设技术规范;通过文件IO操作方式根据技术规范生成代码包结构。
具体地,终端是以文件IO操作方式,根据工程包名生成包结构前缀(此处是指基本信息中输入的工程maven坐标(group、artifact),如com.cntaiping.ft.abc),并根据公司技术规范生成子包(如web、service、dao、dto、model、vo、util等)。
在其中一个实施例中,通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件之前,还包括:通过项目信息输入页面接收组件对应的配置参数;配置文件的生成方式包括:通过文件IO操作方式生成与第二框架版本号对应的标准配置文件;将配置参数和对应的组件关联输入至标准配置文件中的配置项键值对中。
具体地,终端以文件IO操作方式,生成Spring Boot标准配置文件(yml或properties),根据组件和配置参数信息,填充配置项键值对,例如服务器根据公司技术规范维护有各组件标准化的配置模板,此处以配置模板的方式组成配置文件,例如通过文件IO操作方式生成与第二框架版本号对应的标准配置文件,然后将配置参数和对应的组件关联输入至标准配置文件中的配置项键值对中,若不填写配置参数,则相应的项为空,这样终端可以生成空的配置文件,从而用户还可以在配置文件中填写对应的配置参数,但是此处优先地推荐用户通过项目信息输入页面填写对应的配置参数。
上述实施例中,和Spring Initializr相比,工具为工程的初始化生成了更多的内容,如:标准Spring Boot目录结构、包结构、配置文件(含使用者已选相关组件的配置项),减轻使用者手工配置工作量,帮助公司统一代码规范。
具体地,结合图4所示,图4为另一个实施例中的项目工程初始化方法的时序图,在该实施例中,具体包括以下步骤:
首先在接收项目工程初始化指令,并显示项目信息输入页面,该项目信息输入页面具体可以参见图5所示,其中包括了类型、语言、Spring Cloud版本、Spring Boot版本、JDK版本等等。其中该初始化工具后台参考Spring官方信息维护有JDK、Spring Boot和Spring Cloud三者的版本兼容关系,根据使用者选择的Spring Cloud版本信息,初始化工具自动带出对应的JDK和Spring Boot版本信息。如果使用者对Spring Boot有特殊的版本要求,可以对Spring Boot版本进行手动调整,工具会根据Spring Boot版本号命名规则做兼容性校验,如发现存在版本不兼容的风险,工具会在界面提示使用者。同时,工具会根据后台预先定义规则校验使用者输入的Maven坐标命名和Java包命名是否符合公司技术规范。
其次,在输入完成项目基本信息后,还需要输入项目子模块和组件,具体可以参见图6和7所示,其中图6是一个实施例中的项目子模块的显示页面图,图7是一个实施例中的组件的显示页面图。其中,使用者根据项目实际需要进行选择,子模块候选列表根据公司技术选型在工具后台预先定义,显示顺序根据子模块的重要程度和使用频率在工具后台预先定义。使用者根据项目实际需要进行选择,组件候选列表根据公司技术选型在工具后台预先定义,显示顺序根据组件的重要程度和使用频率在工具后台预先定义。
此外,在选择好项目子模块和组件后,则初始化工具输出对应的配置参数录入页面,使用者对所选择的框架子模块、组件相关配置参数进行录入选项。
初始化工具根据公司技术规范(工具后台预先定义),生成标准Spring Boot工程目录结构,生成核心的文件包括(从上到下):启动类、DAO类、实体类、服务接口类、服务接口实现类、ORM映射文件、Web Service接口桩代码、配置文件、依赖定义文件等。
初始化工具根据使用者在页面录入的数据库连接串,工具通过程序获取、解析相应数据库表结构,生成相关文件,包括实体类文件:根据表结构生成字段和相关方法;ORM映射文件:根据表结构生成字段和通用方法;DAO类:生成数据库访问通用方法。
初始化工具后台预先定义子模块、组件和Maven依赖定义包的映射关系,工具根据使用者在页面选择的子模块、组件范围,在服务端匹配得出全量的依赖定义包清单,经去重(可能多个模块、组件对应同一个依赖定义包,重复添加会出错)、排序处理后添加到Maven依赖定义文件。
初始化工具根据公司技术规范,工具后台预先定义子模块、组件的配置参数模板(键值对key:value形式),参数选项值默认为空,等使用者在开发过程中自行补全。如果使用者在页面补充录入了配置参数项,初始化工具在生成配置文件时会将参数选项值自动关联上。
初始化工具根据使用者在页面录入的外部接口访问地址,工具通过程序获取、解析相应接口定义(如Web Service定义文件),生成接口桩代码等文件。
其中,需要说明的是本申请提供的是一套新的项目工程初始化工具,其不仅可以适配Spring框架,对于其他的框架也是具有通用性的,仅在实施例中以Spring框架为例进行了说明。
应该理解的是,虽然图2和图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和图4中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种项目工程初始化装置,包括:第一接收模块100、第二接收模块200、第三接收模块300、生成模块400、依赖包获取模块500和打包初始化模块600,其中:
第一接收模块100,用于接收项目工程初始化指令,并根据项目工程初始化指令显示项目信息输入页面;
第二接收模块200,用于通过项目信息输入页面接收输入的项目基本信息;
第三接收模块300,用于通过项目信息输入页面接收所选择的项目子模块和组件,项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的;项目信息输入页面中显示的项目子模块以及组件是对应项目工程的开发文档中的项目子模块和组件;
生成模块400,用于通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;
依赖包获取模块500,用于根据项目子模块和组件从服务器获取对应的目标依赖包;
打包初始化模块600,用于根据代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包打包得到初始化压缩包。
在其中一个实施例中,上述的依赖包获取模块500包括:
初始依赖包获取单元,用于从服务器获取分别与项目子模块和组件对应的初始依赖包;
去重单元,用于对初始依赖包进行去重操作后得到目标依赖包。
在其中一个实施例中,上述的项目工程初始化装置还包括:
第一框架版本号获取模块,用于从项目基本信息提取第一框架版本号;
版本号返回模块,用于将第一框架版本号发送至服务器,以使得服务器查询与第一框架版本号对应的第二框架版本号,并通过异步方式将第二框架版本号返回;
上述生成模块400包括:
第一预设代码规范获取单元,用于获取预设代码规范;
第一生成单元,用于通过文件IO操作方式按照预设代码规范,根据项目基本信息、项目子模块以及组件以及第二框架版本号生成代码目录结构。
在其中一个实施例中,上述的项目工程初始化装置还包括:
第四接收模块,用于接收针对第二框架版本号的调整指令,调整指令携带有调整后的调整版本号;
兼容判断模块,用于将调整版本号发送给服务器,以使得服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断调整版本号与第一框架版本号是否兼容,并得到判断结果;
第五接收模块,用于异步接收服务器返回的判断结果,并显示。
在其中一个实施例中,上述的生成模块400还包括:
第二预设代码规范获取单元,用于获取预设技术规范;
第二生成单元,用于通过文件IO操作方式根据技术规范生成代码包结构。
在其中一个实施例中,上述的项目工程初始化装置还包括:
第六接收模块,用于通过项目信息输入页面接收组件对应的配置参数;
标准配置文件获取模块,用于通过文件IO操作方式生成与第二框架版本号对应的标准配置文件;
输入模块,用于将配置参数和对应的组件关联输入至标准配置文件中的配置项键值对中。
在其中一个实施例中,上述项目工程初始化装置还包括:
提取模块,用于提取开发文档中的各级题目,并获取项目子模块和组件的总列表;
匹配模块,用于将所提取的题目与所述项目子模块和组件的总列表中的项目子模块和组件进行匹配;
显示模块,用于获取匹配成功的项目子模块和组件显示在所述项目信息输入页面中。
关于项目工程初始化装置的具体限定可以参见上文中对于项目工程初始化方法的限定,在此不再赘述。上述项目工程初始化装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图9所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过WIFI、运营商网络、NFC(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种项目工程初始化方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:接收项目工程初始化指令,并根据项目工程初始化指令显示项目信息输入页面;通过项目信息输入页面接收输入的项目基本信息;通过项目信息输入页面接收所选择的项目子模块和组件,项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的;项目信息输入页面中显示的项目子模块以及组件是对应项目工程的开发文档中的项目子模块和组件;通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;根据项目子模块和组件从服务器获取对应的目标依赖包;根据代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包打包得到初始化压缩包。
在一个实施例中,处理器执行计算机程序时所实现的根据项目子模块和组件从服务器获取对应的目标依赖包,包括:从服务器获取分别与项目子模块和组件对应的初始依赖包;对初始依赖包进行去重操作后得到目标依赖包。
在一个实施例中,处理器执行计算机程序时所实现的通过项目信息输入页面接收输入的项目基本信息之后,还包括:从项目基本信息提取第一框架版本号;将第一框架版本号发送至服务器,以使得服务器查询与第一框架版本号对应的第二框架版本号,并通过异步方式将第二框架版本号返回;处理器执行计算机程序时所实现的通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构,包括:获取预设代码规范;通过文件IO操作方式按照预设代码规范,根据项目基本信息、项目子模块以及组件以及第二框架版本号生成代码目录结构。
在一个实施例中,处理器执行计算机程序时所实现的通过异步方式将第二框架版本号返回之后,还包括:接收针对第二框架版本号的调整指令,调整指令携带有调整后的调整版本号;将调整版本号发送给服务器,以使得服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断调整版本号与第一框架版本号是否兼容,并得到判断结果;异步接收服务器返回的判断结果,并显示。
在一个实施例中,处理器执行计算机程序时所涉及的代码包结构的生成方式包括:获取预设技术规范;通过文件IO操作方式根据技术规范生成代码包结构。
在一个实施例中,处理器执行计算机程序时所实现的通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件之前,还包括:通过项目信息输入页面接收组件对应的配置参数;处理器执行计算机程序时所涉及的配置文件的生成方式包括:通过文件IO操作方式生成与第二框架版本号对应的标准配置文件;将配置参数和对应的组件关联输入至标准配置文件中的配置项键值对中。
在一个实施例中,处理器执行计算机程序时所涉及的项目信息输入页面中显示的项目子模块以及组件的获取方式包括:提取开发文档中的各级题目,并获取项目子模块和组件的总列表;将所提取的题目与所述项目子模块和组件的总列表中的项目子模块和组件进行匹配;获取匹配成功的项目子模块和组件显示在项目信息输入页面中。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:接收项目工程初始化指令,并根据项目工程初始化指令显示项目信息输入页面;通过项目信息输入页面接收输入的项目基本信息;通过项目信息输入页面接收所选择的项目子模块和组件,项目信息输入页面中显示的项目子模块以及组件是按照预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示的;项目信息输入页面中显示的项目子模块以及组件是对应项目工程的开发文档中的项目子模块和组件;通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件;根据项目子模块和组件从服务器获取对应的目标依赖包;根据代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及目标依赖包打包得到初始化压缩包。
在一个实施例中,计算机程序被处理器执行时所实现的根据项目子模块和组件从服务器获取对应的目标依赖包,包括:从服务器获取分别与项目子模块和组件对应的初始依赖包;对初始依赖包进行去重操作后得到目标依赖包。
在一个实施例中,计算机程序被处理器执行时所实现的通过项目信息输入页面接收输入的项目基本信息之后,还包括:从项目基本信息提取第一框架版本号;将第一框架版本号发送至服务器,以使得服务器查询与第一框架版本号对应的第二框架版本号,并通过异步方式将第二框架版本号返回;计算机程序被处理器执行时所实现的通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构,包括:获取预设代码规范;通过文件IO操作方式按照预设代码规范,根据项目基本信息、项目子模块以及组件以及第二框架版本号生成代码目录结构。
在一个实施例中,计算机程序被处理器执行时所实现的通过异步方式将第二框架版本号返回之后,还包括:接收针对第二框架版本号的调整指令,调整指令携带有调整后的调整版本号;将调整版本号发送给服务器,以使得服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断调整版本号与第一框架版本号是否兼容,并得到判断结果;异步接收服务器返回的判断结果,并显示。
在一个实施例中,计算机程序被处理器执行时所涉及的代码包结构的生成方式包括:获取预设技术规范;通过文件IO操作方式根据技术规范生成代码包结构。
在一个实施例中,计算机程序被处理器执行时所实现的通过文件IO操作方式根据项目基本信息、项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件之前,还包括:通过项目信息输入页面接收组件对应的配置参数;计算机程序被处理器执行时所涉及的配置文件的生成方式包括:通过文件IO操作方式生成与第二框架版本号对应的标准配置文件;将配置参数和对应的组件关联输入至标准配置文件中的配置项键值对中。
在一个实施例中,计算机程序被处理器执行时所涉及的项目信息输入页面中显示的项目子模块以及组件的获取方式包括:提取开发文档中的各级题目,并获取项目子模块和组件的总列表;将所提取的题目与所述项目子模块和组件的总列表中的项目子模块和组件进行匹配;获取匹配成功的项目子模块和组件显示在项目信息输入页面中。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种项目工程初始化方法,其特征在于,所述方法包括:
接收项目工程初始化指令,并根据所述项目工程初始化指令显示项目信息输入页面;
通过所述项目信息输入页面接收输入的项目基本信息;
通过所述项目信息输入页面接收所选择的项目子模块和组件,其中,所述项目信息输入页面中显示的项目子模块以及组件是从对应项目工程的开发文档中提取各级题目,将各级题目与Spring Cloud框架的项目子模块和组件的总列表进行匹配得到的,且对匹配得到的项目子模块和组件根据预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示;
通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成标准Spring Boot代码目录结构、代码包结构、接口桩代码以及对应的配置文件;
根据所述项目子模块和组件从服务器获取对应的目标依赖包;
根据所述代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及所述目标依赖包打包得到初始化压缩包;
所述根据所述项目子模块和组件从服务器获取对应的目标依赖包,包括:
从服务器获取分别与所述项目子模块和组件对应的初始依赖包;
对所述初始依赖包进行去重操作后得到目标依赖包。
2.根据权利要求1所述的方法,其特征在于,所述通过所述项目信息输入页面接收输入的项目基本信息之后,还包括:
从所述项目基本信息提取第一框架版本号;
将所述第一框架版本号发送至服务器,以使得服务器查询与所述第一框架版本号对应的第二框架版本号,并通过异步方式将所述第二框架版本号返回;
所述通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构,包括:
获取预设代码规范;
通过文件IO操作方式按照所述预设代码规范,根据所述项目基本信息、所述项目子模块以及组件以及所述第二框架版本号生成代码目录结构。
3.根据权利要求2所述的方法,其特征在于,所述通过异步方式将所述第二框架版本号返回之后,还包括:
接收针对所述第二框架版本号的调整指令,所述调整指令携带有调整后的调整版本号;
将所述调整版本号发送给服务器,以使得所述服务器根据第二框架版本号的命名规则、第一框架版本号与第二框架版本号的兼容性关系判断所述调整版本号与所述第一框架版本号是否兼容,并得到判断结果;
异步接收所述服务器返回的判断结果,并显示。
4.根据权利要求2所述的方法,其特征在于,所述代码包结构的生成方式包括:
获取预设技术规范;
通过文件IO操作方式根据所述技术规范生成所述代码包结构。
5.根据权利要求2所述的方法,其特征在于,所述通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成代码目录结构、代码包结构、接口桩代码以及对应的配置文件之前,还包括:
通过所述项目信息输入页面接收所述组件对应的配置参数;
所述配置文件的生成方式包括:
通过文件IO操作方式生成与所述第二框架版本号对应的标准配置文件;
将所述配置参数和对应的组件关联输入至所述标准配置文件中的配置项键值对中。
6.根据权利要求1所述的方法,其特征在于,所述项目信息输入页面中显示的项目子模块以及组件的获取方式包括:
提取开发文档中的各级题目,并获取项目子模块和组件的总列表;
将所提取的题目与所述项目子模块和组件的总列表中的项目子模块和组件进行匹配;
获取匹配成功的项目子模块和组件显示在所述项目信息输入页面中。
7.一种项目工程初始化装置,其特征在于,所述装置包括:
第一接收模块,用于接收项目工程初始化指令,并根据所述项目工程初始化指令显示项目信息输入页面;
第二接收模块,用于通过所述项目信息输入页面接收输入的项目基本信息;
第三接收模块,用于通过所述项目信息输入页面接收所选择的项目子模块和组件,其中,所述项目信息输入页面中显示的项目子模块以及组件是从对应项目工程的开发文档中提取各级题目,将各级题目与Spring Cloud框架的项目子模块和组件的总列表进行匹配得到的,且对匹配得到的项目子模块和组件根据预设技术选型、以及项目子模块以及组件的使用频率的顺序进行显示;
生成模块,用于通过文件IO操作方式根据所述项目基本信息、所述项目子模块以及组件生成标准Spring Boot代码目录结构、代码包结构、接口桩代码以及对应的配置文件;
依赖包获取模块,用于根据所述项目子模块和组件从服务器获取对应的目标依赖包;
打包初始化模块,用于根据所述代码目录结构、代码包结构、接口桩代码以及对应的配置文件以及所述目标依赖包打包得到初始化压缩包;
所述依赖包获取模块包括:
初始依赖包获取单元,用于从服务器获取分别与所述项目子模块和组件对应的初始依赖包;
去重单元,用于对所述初始依赖包进行去重操作后得到目标依赖包。
8.根据权利要求7所述的装置,其特征在于,所述项目工程初始化装置还包括:
第一框架版本号获取模块,用于从所述项目基本信息提取第一框架版本号;
版本号返回模块,用于将所述第一框架版本号发送至服务器,以使得服务器查询与所述第一框架版本号对应的第二框架版本号,并通过异步方式将所述第二框架版本号返回;
所述生成模块包括:
第一预设代码规范获取单元,用于获取预设代码规范;
第一生成单元,用于通过文件IO操作方式按照所述预设代码规范,根据所述项目基本信息、所述项目子模块以及组件以及所述第二框架版本号生成代码目录结构。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述的方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
CN202010707620.4A 2020-07-22 2020-07-22 项目工程初始化方法、装置、计算机设备和存储介质 Active CN111596965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010707620.4A CN111596965B (zh) 2020-07-22 2020-07-22 项目工程初始化方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010707620.4A CN111596965B (zh) 2020-07-22 2020-07-22 项目工程初始化方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111596965A CN111596965A (zh) 2020-08-28
CN111596965B true CN111596965B (zh) 2020-11-03

Family

ID=72186563

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010707620.4A Active CN111596965B (zh) 2020-07-22 2020-07-22 项目工程初始化方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111596965B (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112052038A (zh) * 2020-09-09 2020-12-08 云账户技术(天津)有限公司 一种生成前端接口的方法及装置
CN112181388B (zh) * 2020-09-25 2024-03-01 广州虎牙科技有限公司 Sdk组件的初始化方法、装置、存储介质及控制终端
CN112631676B (zh) * 2020-12-18 2024-01-26 深圳点链科技有限公司 代码动态加载方法、装置及计算机可读存储介质
CN112685029A (zh) * 2020-12-30 2021-04-20 京东数字科技控股股份有限公司 一种可视化模板的生成方法、装置、设备及存储介质
CN113050984A (zh) * 2021-03-26 2021-06-29 挂号网(杭州)科技有限公司 资源调取方法、装置、电子设备及存储介质
CN113342395A (zh) * 2021-06-04 2021-09-03 中国工商银行股份有限公司 一种依赖包管理方法和装置
CN113268229B (zh) * 2021-06-08 2023-06-27 中国联合网络通信集团有限公司 一种代码生成方法和代码生成装置
CN113535182B (zh) * 2021-06-30 2023-02-17 上海浦东发展银行股份有限公司 项目工程的构建方法、装置、计算机设备和存储介质
CN113656096A (zh) * 2021-08-10 2021-11-16 成都长城开发科技有限公司 微服务快速集成系统、方法、设备及存储介质
CN113721907A (zh) * 2021-08-31 2021-11-30 平安国际智慧城市科技股份有限公司 前端开发方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254906A1 (en) * 2005-07-25 2009-10-08 Liang-Jie Zhang Method and apparatus for enabling enterprise project management with service oriented resource and using a process profiling frameword
CN110109681A (zh) * 2019-05-08 2019-08-09 上海携程商务有限公司 不同平台间代码的转换方法及系统
CN110989986A (zh) * 2019-12-02 2020-04-10 浙江大搜车软件技术有限公司 基于软件模板的软件生成方法、装置和计算机设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090254906A1 (en) * 2005-07-25 2009-10-08 Liang-Jie Zhang Method and apparatus for enabling enterprise project management with service oriented resource and using a process profiling frameword
CN110109681A (zh) * 2019-05-08 2019-08-09 上海携程商务有限公司 不同平台间代码的转换方法及系统
CN110989986A (zh) * 2019-12-02 2020-04-10 浙江大搜车软件技术有限公司 基于软件模板的软件生成方法、装置和计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于微服务的 OJ 系统重构与优化;郑彬彬;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180215(第2期);正文第31-33页第5.1节全部 *

Also Published As

Publication number Publication date
CN111596965A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN111596965B (zh) 项目工程初始化方法、装置、计算机设备和存储介质
US20210279115A1 (en) Automated api code generation
CN110912724A (zh) 一种基于参数驱动的自动业务编排方法及装置
US10635408B2 (en) Method and apparatus for enabling agile development of services in cloud computing and traditional environments
US10346159B2 (en) Systems and methods for software scanning tool
US9727354B2 (en) System and methods for loading an application and its modules in a client device
CN107807841B (zh) 服务器模拟方法、装置、设备及可读存储介质
CN112306620B (zh) 自定义表单控件的多语言加载方法及装置
US8413109B2 (en) Systems and methods for metamodel transformation
CN105550206A (zh) 结构化查询语句的版本控制方法及装置
CN111414350A (zh) 一种服务生成方法及装置
US20200356469A1 (en) Test automation systems and methods using logical identifiers
CN112433712A (zh) 报表展示方法、装置、计算机设备和存储介质
CN110362341B (zh) 基于微服务架构的业务管理方法、装置、设备和存储介质
CN116560683A (zh) 软件更新方法、装置、设备及存储介质
CN111427577A (zh) 代码处理方法、装置及服务器
US8930960B2 (en) Methods and systems for object interpretation within a shared object space
CN113568603B (zh) 组件对象创建及接口方法调用方法、终端及存储装置
CN111722881B (zh) 一种容器云平台的资源扩展方法、系统及装置
CN108363614B (zh) 一种应用的业务模块管理方法、装置及服务器
CN114254232A (zh) 云产品页面生成方法、装置、计算机设备和存储介质
CN101599018A (zh) 一种服务集成平台系统中更新静态页面的方法及系统
CN112825038A (zh) 基于通用组件语言规范的可视化页面制作方法和相关产品
CN117112654B (zh) 城市数据展示方法、装置、计算机设备和存储介质
CN113947391B (zh) 基于web的采招系统管理方法、装置、设备及存储介质

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