zl程序教程

您现在的位置是:首页 >  .Net

当前栏目

如何在 IDEA 中配置 Easy Code 的 MybatisPlus 实体类模板

2023-02-18 16:32:03 时间

前言

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

}