Skip to content

用于生成acuity-cloud-pro和acuity-boot-pro项目生成新服务。

默认配置

表单上的默认值可以修改application.yml。

问:为什么acuity-generator-server的配置文件不放在nacos ,而是放在application.yml?

答:acuity-generator-server是提供给开发人员生成代码使用了,配置信息中很多参数都跟开发人员自己的环境有关,若放在nacos中,不同的开发人员修改自己的配置不太方便,故放在application.yml中,方便开发人员按需修改。

yml

yaml
# 代码生成
acuity:
  generator:
  	# description
    outputDir: /Users/acuity/gitlab/acuity-cloud-pro-datasource-column
    # 作者
    author: acuity
    # 项目类型
    projectType: CLOUD
    # 项目前缀
    projectPrefix: 'acuity'
    packageInfoConfig: 
      # groupId 和 基础包
      parent: 'top.acuity.box'
      # utilGroupId 和 util基础包
      utilParent: 'top.acuity.commons'
# 代码生成
acuity:
  generator:
  	# description
    outputDir: /Users/acuity/gitlab/acuity-cloud-pro-datasource-column
    # 作者
    author: acuity
    # 项目类型
    projectType: CLOUD
    # 项目前缀
    projectPrefix: 'acuity'
    packageInfoConfig: 
      # groupId 和 基础包
      parent: 'top.acuity.box'
      # utilGroupId 和 util基础包
      utilParent: 'top.acuity.commons'

字段介绍

  1. 项目类型 生成acuity-cloud-pro还是acuity-boot-pro项目

  2. 输出路径 acuity-cloud-pro或acuity-boot-pro项目的本地存放绝对路径。点击“本地生成”时,会在此路径生成服务。

  3. 作者 生成到代码注释 @author

  4. 项目前缀 项目的前缀,如:

    • acuity-base、acuity-base-server 中的acuity

    整个项目前缀需要完全统一,若你想实现:天源云项目已提供的服务保持acuity前缀,你们的业务服务使用其他前缀,无法使用此代码生成器。但手动创建服务是可以这样子实现的!

  5. 中文服务名 生成的服务中文名称

  6. 服务名 服务的标识,如:

    • acuity-base-server 服务中的 base
    • acuity-system-server 服务中的 system
  7. 基础包 acuity-cloud或acuity-boot项目的基础包,如:

    • top.acuity.box.base.dao.common 包中的 top.acuity.box
    • top.acuity.box.file.dao.xxx 包中的 top.acuity.box
  8. 模块名 一个服务下,可以创建多个模块。如:

    • top.acuity.box.base.dao.common 包中的 base
    • top.acuity.box.file.dao.xxx 包中的 file
  9. groudId acuity-cloud或acuity-boot项目 pom文件的groupId,一般情况下,跟=基础包=保持一致。

  10. 版本号 acuity-cloud或acuity-boot项目 pom文件中的版本号

  11. 端口号 acuity-cloud项目新建服务的端口号,acuity-boot项目请忽略该参数

  12. util基础包 acuity-util项目的基础包,如:

    • top.acuity.commons.xxx 包中的 top.acuity.commons
  13. utilGroupId acuity-util项目 pom文件的 groupId

完整结构为:

一个服务的大致文件结构为: ${项目前缀}-${服务名}/${项目前缀}-${服务名}-${分层}/src/main/java/${基础包}.${模块名}.${分层}[.${子包名}]

sh
├── ${项目前缀}-${服务名}           
   ├── ${项目前缀}-${服务名}-api   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.api
   ├── ${项目前缀}-${服务名}-entity   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.entity.${子包名}
         ├──  ${基础包}.${模块名}.enumeration.${子包名}
         ├──  ${基础包}.${模块名}.vo.query.${子包名}
         ├──  ${基础包}.${模块名}.vo.result.${子包名}
         ├──  ${基础包}.${模块名}.vo.save.${子包名}
         ├──  ${基础包}.${模块名}.vo.update.${子包名}
   ├── ${项目前缀}-${服务名}-biz   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.biz.${子包名}
         ├──  ${基础包}.${模块名}.service.${子包名}
         ├──  ${基础包}.${模块名}.manager.${子包名}
         ├──  ${基础包}.${模块名}.mapper.${子包名}
   ├── ${项目前缀}-${服务名}-controller         
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.controller.${子包名}
   ├── ${项目前缀}-${服务名}-server        
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.config   
      ├── src/main/resource 
         ├──  yml     
         ├──  xml
├── ${项目前缀}-${服务名}           
   ├── ${项目前缀}-${服务名}-api   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.api
   ├── ${项目前缀}-${服务名}-entity   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.entity.${子包名}
         ├──  ${基础包}.${模块名}.enumeration.${子包名}
         ├──  ${基础包}.${模块名}.vo.query.${子包名}
         ├──  ${基础包}.${模块名}.vo.result.${子包名}
         ├──  ${基础包}.${模块名}.vo.save.${子包名}
         ├──  ${基础包}.${模块名}.vo.update.${子包名}
   ├── ${项目前缀}-${服务名}-biz   
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.biz.${子包名}
         ├──  ${基础包}.${模块名}.service.${子包名}
         ├──  ${基础包}.${模块名}.manager.${子包名}
         ├──  ${基础包}.${模块名}.mapper.${子包名}
   ├── ${项目前缀}-${服务名}-controller         
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.controller.${子包名}
   ├── ${项目前缀}-${服务名}-server        
      ├── src/main/java 
         ├──  ${基础包}.${模块名}.config   
      ├── src/main/resource 
         ├──  yml     
         ├──  xml

使用代码生成器

新建服务

生成

结构

配置调整

新增的配置

验证

欢迎使用天源云Saas快速开发系统