如何在 IDEA 中配置 Easy Code 的 MybatisPlus 实体类模板
前言
Easy Code 是一个很强大的插件,可以根据数据库的表结构生成对应的实体类、Mapper 接口等代码,省去了编写没有技术含量的代码的工作,极大提升敲代码的效率。但是如果仅仅使用预置的模板可能无法满足我们的需求,这时候就可以自己去定制模板。下面给出实体类的模板。
实现流程
我们希望实体类满足以下需求:
- 使用 Lombok 的
@Data
、@NoArgsConstructor
和@AllArgsConstructor
注解 - 使用
@TableName
注解让实体类应该和数据库的表名对应 - 实现
Serializable
接口 - 在主键字段上使用
@TableId
注解
对应的模板如下所示:
##导入宏定义
$!{define.vm}
##保存文件(宏定义)
#save("/entity", ".java")
##包路径(宏定义)
#setPackageSuffix("entity")
##自动导入包(全局变量)
$!{autoImport.vm}
import java.io.Serializable;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.AllArgsConstructor;
import lombok.NoArgsConstructor;
##表注释(宏定义)
#tableComment("表实体类")
@SuppressWarnings("serial")
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("$!{tableInfo.obj.name}")
public class $!{tableInfo.name} implements Serializable {
private static final long serialVersionUID = $!tool.serial();
#foreach($column in $tableInfo.fullColumn)
#if(${column.comment})/**
* ${column.comment}
*/#end
#if($column.name.equals('id'))
@TableId(type = IdType.AUTO)
#end
private $!{tool.getClsNameByFullName($column.type)} $!{column.name};
#end
}