# mpCodegen
**Repository Path**: naiqing/mp-codegen
## Basic Information
- **Project Name**: mpCodegen
- **Description**: 以往用到代码生成器,要么就是web容器启动、要么就是在idea编译器中开发,用一些以后又很久不打开再次使用又得打开容器很麻烦,因此我做了简单开发做个可执行的代码生成器。
最终达到的效果是:编译以后的可运行jar包`mpCodegen-1.0.jar`拷贝给我或者其他人进行简单配置即可使用,不需要idea编译器或web容器。是一个最简洁、最方便、最快速的开箱可用的懒人代码生成器。
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2021-07-09
- **Last Updated**: 2021-08-15
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# MybatisPlus懒人代码生成器
## 简介
此代码生成器是根据[Mybatis-Plus官网](https://mp.baomidou.com/guide/generator.html)的介绍,结合常用的开发需求而成的。工具可以帮助生成 controller\service\mapper\entity文件,未包含前端页面。
最终达到的效果是:编译以后的可运行jar包`mpCodegen-1.0.jar`拷贝给我或者其他人进行简单配置即可使用,不需要idea编译器或web容器。是一个最简洁、最方便、最快速的开箱可用的懒人代码生成器。
## 代码介绍
### 代码结构
```
~~~
├── config.properties //基础配置文件,数据库地址、包名、表名等。
├── src/main/java/
│ └── CodegenMain.java //启动类
├── src/main/java/com/naiqing/codegen
│ └── CodeGenerator.java //代码生成类
│ └── CodeGenertorConfig.java //配置类,读取基础配置文件
├── resources/templates
│ └── myMapper.xml.ftl //Mapper.xml的模板
├── pom.xml //依赖
~~~
```
### 配置文件介绍config.properties
1. 运行`CodegenMain.java`主程序入口,会读取当前目录下的`config.properties`配置文件,此文件为必要文件。
2. 配置文件详解
```properties
##数据库配置
datasource.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
datasource.username=root
datasource.password=root
##是否开启swagger2的注解,
codegen.openSwagger2=true
##是否开启lombok开启,
codegen.openLombok=true
##为空时默认当前目录
codegen.outdir=
##实体类的父类 (为空则没有父类),如com.tt.domain.BaseEntity
codegen.superEntity=
##Controller的父类(为空则没有父类)如com.tt.common.core.web.BaseController
codegen.superController=
##类的作者
codegen.author=naiqing
##包名
codegen.packageName=com.tt
##模块名称如“user”
codegen.moduleName=demo
## 需要生成表名,多个用英文逗号隔开。如果不设置则在控制台提示用户动态输入。
codegen.tableNames=demo
```
## 生成可执行程序
1. 编译可执行程序
在项目目录下通过maven命令打包,如:`mvn clean package`。
2. 拷贝`mpCodegen-1.0.jar`
在项目目录下`xx\target`目录下会产生文件`mpCodegen-1.0.jar`,将此文件拷贝至工作目录,如`E:\dev\my`。
3. 拷贝`config.properties`
将项目目录下的`config.properties`也拷贝至工作目录,`E:\dev\my`。
*因为`config.properties`需要用户自定义内容,因此未打包至jar中。*
4. 完成
此时在工作目录(如`E:\dev\my`)下会有2个文件`mpCodegen-1.0.jar`和`config.properties`
此时我们就可以将工作目录拷贝给其他人使用啦!
## 使用代码生成器
1. 配置`config.properties`[重要]。根据实际情况配置数据库链接、包名、作者等内容。详见[配置文件详解](#jump)
2. 在工作目录下使用cmd命令进入控制台。
在控制台输入以下命令`java -jar mpCodegen-1.0.jar`
```cmd
E:\dev\my>java -jar mpCodegen-1.0.jar
---------------------------------------------
|-正在使用代码生成器,请检查以下内容:
|-1.已配置数据库、包名等。E:\dev\my/config.properties
|-2.手动删除文件(存在则不会再生成):E:\dev\my/outfile
---------------------------------------------
请输入您是否已完成以上配置?y/n:
y
[2021-07-09 15/:52/:37]DEBUG com.baomidou.mybatisplus.generator.AutoGenerator(line/:93) -==========================准备 生成文件...==========================
......
[2021-07-09 15/:52/:41]DEBUG com.baomidou.mybatisplus.generator.AutoGenerator(line/:107) -==========================文件生成完成!!!==========================
---------------------------------------------
|-文件生成目录:E:\dev\my/outfile
---------------------------------------------
```
3. 根据提示完成即可生成代码。