简介
EasyCode是基于IntelliJ IDEA开发的代码生成插件,通过自定义生成模板可以完成定制化的 Mapper Service Controller 生成,结合数据库 Comment还可以实现从数据库到 Swagger 的一键配置,非常的强大与方便,项目地址:EasyCode--码云 这里推荐大家使用
安装
和一般的Idea插件安装方式一样,点击 File -> Setting -> Plugins 搜索 EasyCode 点击 Install 安装即可,安装之后需要重启,当然如果是Idea最新的2019.3版本支持插件热安装就不需要重启了。
连接数据库
安装之后需要使用Idea连接数据库,在Idea的右侧有个DataBase选项卡,点击之后选择对应的数据库。这边我使用的是 Mysql 数据库
配置好连接名称,连接路径,账号密码和数据库测试连接,测试通过后点击OK,就可以成功的连接到数据库,这里Idea的数据库图形化界面做的也挺好的。
配置EasyCode的模板
1. 配置作者名称
同样是 File -> Settings -> other Settings 选择 EasyCode 或者直接搜索 EasyCode 进行编辑,首先键入作者名称,这样在生成的类上面就会加上你的名字,时间等信息。
2. Type Manager 映射类型管理
此页面是用来建立数据库字段类型与Java变量类型关系的,其中已经预先定义好了很多对应关系,但对于 tinyint((\d+))? unsigned (无符号的byte)类型却没有进行预定义,如果不进行手动配置,在进行逆向生成的时候会将其映射成 Java Object 类型,所以需要我们进行手动的添加关联关系
3. Template Setting 模板设置
这个页面就是我们主要需要配置的页面了,我们可以自己新建一个模板组,也可以直接在原来模板文件的基础上进行修改。这里我已经对原有的模板进行了自定义的修改,保留了 entity.java mapper.java mapper.xml service.java controller.java 去掉了原有的 dao serviceImpl.具体的模板内容如下,需要的朋友可以直接复制修改。
当然也可以点击配置作者名称页面的导入模板按钮,输入对应的 Token 进行一键替换由于token只能保持6个小时,所以我就不在这里贴上了。
entity.java
实体类模板改动如下
删除了原本的 Getter/Setter 采用 lombok 的 @Data 注解替换之
类添加 @ApiModel("$tableInfo.comment") 注解,读取 Mysql 中表的注释作为类在Swagger中的解释
字段添加 @ApiModelProperty("$column.comment") 注解,读取 Mysql 中字段的注释作为对应参数在Swagger中的注释
##引入宏定义
$!define
##使用宏定义设置回调(保存位置与文件后缀)
#save("/entity", ".java")
##使用宏定义设置包后缀
#setPackageSuffix("entity")
##使用全局变量实现默认包导入
$!autoImport
import java.io.Serializable;
import io.swagger.annotations.*;
import lombok.Data;
##使用宏定义实现类注释信息
#tableComment("实体类")
@Data
@ApiModel("$tableInfo.comment")
public class $!{tableInfo.name} implements Serializable {
private static final long serialVersionUID = $!tool.serial();
#foreach($column in $tabl