mybatis-plus-generator 生成枚举类增强

基于官方mybatis-plus-generator3.3.0 增强-生成枚举类

增强说明

根据表字段tinyint数据类型以及特定注释格式生成枚举类 注释格式必须要符合 设备故障状态:{0:异常 , 1:正常} 这种格式下才能正常解析生成
注:注释中的冒号与逗号均为中文符号 现仅支持mysql与vm模板,其他可根据源码自行扩展

例子

类型注释
idbigint主键
sextinyint年龄:{0:男 , 1:女}
is_goodtinyint是否优秀学生:{0:否 , 1:是}
birthdatetime生日

程序会自动筛选sex和is_good为枚举类

生成enum格式类如下 public class TableEnum {

 // 性别枚举
  public enum SexEnum {
    SEX_0(0, "男"),
    SEX_1(1, "女"),
          ;

    private Integer key;
    private String value;

    SexEnum(Integer key, String value) {
        this.key = key;
        this.value = value;
    }

    public Integer getKey() {
        return key;
    }

    public String getValue() {
        return value;
    }

    static public SexEnum get(Integer key) {
        for (SexEnum e : SexEnum.values()) {
            if (e.getKey().equals(key)) {
                return e;
            }
        }
        return SEX_0;
    }
}

// 是否优秀学生枚举
public enum IsGoodEnum {
    IS_GOOD_0(0, "否"),
    IS_GOOD_1(1, "是"),
          ;

    private Integer key;
    private String value;

    IsGoodEnum(Integer key, String value) {
        this.key = key;
        this.value = value;
    }

    public Integer getKey() {
        return key;
    }

    public String getValue() {
        return value;
    }

    static public IsGoodEnum get(Integer key) {
        for (IsGoodEnum e : IsGoodEnum.values()) {
            if (e.getKey().equals(key)) {
                return e;
            }
        }
        return IS_GOOD_0;
    }
}

}

启动类配置

     String templatePathEnumJava = "/templates/enum.java.vm";
    // 自定义配置会被优先输出
    focList.add(new FileOutConfig(templatePathEnumJava) {
        @Override
        public String outputFile(TableInfo tableInfo) {
            return projectPath
                    + "/src/main/java" + RELATIVE_PATH + "/"  + moduleName  + "/enums/"
                    + tableInfo.getEnumName() + StringPool.DOT_JAVA;
        }
    });

    cfg.setFileOutConfigList(focList);
    
    
    ........
    
    
    templateConfig.setEnumName(null);  

本项目启动类为 MybatisGenerator.java

 

包下载:https://download.csdn.net/download/qq_38212332/14504150

github地址:https://github.com/zhujinghuic/linkey-mybatis-plus-generator.git

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值