# maple-gen **Repository Path**: bigBossPlus/maple-gen ## Basic Information - **Project Name**: maple-gen - **Description**: 用java语言编写的可视化,轻量级的代码生成器,启动简单,文档齐全,使用方便,支持多种语言的代码生成,支持模板的定制化开发,致力于提高工作效率,减少crud的代码编写,欢迎star,分享,提成建议,共同开发 - **Primary Language**: Unknown - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-08-30 - **Last Updated**: 2024-08-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # maple-gen ## 通用的代码生成工具,包括: - 代码模板生成器 - 代码生成器 - 代码格式化工具 - 代码注释 - sql 菜单生成 - 一键导入表结构 ## 1. 模板修改与定制 模板位置:maple-gen/maple-generator/src/main/resources/vm/ 1.1:模板结构: html:模板引擎代码 java:java代码 req: 请求参数 resp: 返回参数 vo: 前端可视化数据 controller: 控制器代码 service: 服务层代码 dao: 数据访问层代码 entity: 实体类代码 mapper: mybatis mapper代码 sql:sql代码 xml: mybatis xml代码 1.2:以上模板均可修改与定制 模板语法: ${xxx}:变量 $xxx: 变量简写 $column.javaType:对象变量获取 变量支持使用java语法 如:$column.javaField.substring(1,2).matches("[A-Z]") @if(xxx): @end:条件判断 @else: @end:条件判断 @else if: @end:条件判断 @for(xxx): @end:循环 #set(xxx): 赋值 #foreach ($column in $columns) : 循环表字段 ## 2:代码预览与下载,关键修改点 位置:maple-gen/maple-generator/src/main/java/com.maple.generator.util.VelocityUtils 方法: getTemplateList() :获取模板列表 getFileName() : 获取文件名 用于代码下载 ## 3:启动项目 4.1:创建数据库 maple-gen 4.2:导入表结构 maple-gen/sql/maple-gen.sql 4.3:修改配置文件 maple-gen/maple-web/src/main/resources/application-druid.yml 修改数据库地址和密码 4.4:启动项目 maple-gen/maple-web/src/main/java/com/maple/App.java ## 4: 代码生成步骤: 5.1:在maple-gen数据库中创建表结构 5.2:启动项目后 访问 http://localhost:8888/tool/gen 5.3:点击导入选择表,引入表结构 5.4:点击编辑修改基本信息,修改字段类型,描述等, 修改包名,模块名,建议选择单表生成避免错误代码 修改完成后点击关闭即可(有个小bug,暂时不影响使用) 5.5:点击预览代码,可以看到生成的代码 5.6:点击生成代码,生成代码到本地,点击下载代码,可以下载代码到本地 ## 5:演示图: ![](image/1.png) ![](image/2.png) ![](image/3.png) ![](image/4.png) ## 6:欢迎提出建议,共同进步,star支持一下,fork一份,修改一点,提交pr,共同完善此工具 如果对你的工作有帮助,能提升效率,请多多分享转发,谢谢! 若使用中有问题,欢迎提issue,我会及时回复,或者加入qq群交流,谢谢! ## 联系我,提供部署定制服务 wx: mapleCx331 qq群:[![加入QQ群](https://img.shields.io/badge/628043364-blue.svg)](https://qm.qq.com/q/RuCfOyaOUm)