# CodeGenerator **Repository Path**: cancode/maxcode_CodeGenerator ## Basic Information - **Project Name**: CodeGenerator - **Description**: CodeGenerator (JAVA代码生成平台) - **Primary Language**: Java - **License**: Artistic-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-08-19 - **Last Updated**: 2024-08-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # CodeGenerator (JAVA代码生成平台) ---- 旨在通过自动化工具减轻重复性劳动,提高开发效率。该平台支持从 SQL 语句自动生成 Java 代码,适用于多种框架和技术栈,包括 JPA、JdbcTemplate、MyBatis、MyBatis Plus 和 BeetlSQL 等。通过简单的 SQL 表定义,即可快速生成 CRUD 相关的代码模板,帮助开发者专注于业务逻辑而非繁琐的基础操作。 ![image](https://img.shields.io/badge/SpringBoot2-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-blue.svg) ![image](https://img.shields.io/badge/Freemarker-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-blue.svg) ![image](https://img.shields.io/badge/CodeGenerator-%E2%98%85%E2%98%85%E2%98%85%E2%98%85%E2%98%85-blue.svg) # Author >powered by `Maxcode` # Tips or Features - 支持`DDL SQL`/`INSERT SQL`/`SIMPLE JSON`三种生成模式 - `自动记忆`最近生成的内容,最多保留9个 - 提供众多`通用模板`,易于使用,复制粘贴加简单修改即可完成CRUD操作 - 支持`特殊字符`模板(`#`请用`井`代替;`$`请用`¥`代替) - `Util集合`提供一些基本对象的使用方法供方便COPY,如对应的CRUD SQL语句、setMap、getMap、get属性等等 - 关于`类名注释`,可根据`comment=(mysql)`或者`comment on table(pgsql/oracle)`生成 - 可设置是否`自动引包`(java中的import)及`引入包路径`(java类中的package),建议取消并配合IDEA的自动引包更智能(Settings→Editor→General→Auto Import,勾选Add unambiguous imports on the fly以及Optimize imports on the fly)。 - 可设置`表名前缀`,例如sys_user前缀为sys_之后可以正确生成user类 - 可在`applicaltion.yml`中的`OEM.mode`设置`js/css引入模式`为`local`(本地模式,默认)/`CDN`(云CDN模式,在线网站推荐,省流量) - OEM信息可以在`applicaltion.yml`中的`OEM`中更改 - *支持公共js/css的Local/CDN模式切换,方便`本地`或者`工具站`进行部署,可以在`application.yml`的`OEM.Mode=`进行设置,之后请在`header-CDN-v2.html`/`header-local-v2.html`中检查对应js/css配置是否正确。默认为`CDN`模式。对于没有网络的环境请使用`local`模式。 # ClassInfo/TableInfo |名称|说明| |:----|:----| |packageName|自定义的包名| |authorName|自定义的作者名| |tableName|sql中的表名| |className|java类名| |classComment|sql表备注/java类备注| |fieldName|字段名| |fieldComment|字段备注| # Options |名称|说明| 默认值 | |:----|:----|:---------------| |作者 |authorName| maxcode | |包名 |packageName| cn.devtools | |返回(成功)|returnUtilSuccess| Return.SUCCESS | |返回(失败)|returnUtilFailure| Return.ERROR | |忽略前缀|ignorePrefix | sys_ | |输入类型 |dataType| DDL SQL | |TinyInt转换 |tinyintTransType| int | |时间类型 |timeTransType| Date | |命名类型 |nameCaseType| CamelCase/驼峰 | |是否包装类型 |isPackageType| true | |是否swaggerUI|isSwagger| false | |是否字段注释|isComment| true | |是否自动引包|isAutoImport| | |是否带包路径|isWithPackage| | |是否Lombok|isLombok| true | # How to add a new template 1. `resources/templates/code-generator`中找到对应类型 2. COPY并编写freemarker模板文件`.ftl` 3. 修改`template.json`文件,新增模板信息,页面可动态加载 ## Docker ```agsl docker build -t codegenerator:v1.0 . ```