mybatis-plus 枚举传参,接口入参含枚举类型

2021年9月20日 17点热度 0条评论 来源: 轻点 别打脸

枚举定义固定值规范,加强了程序的可读性、易用性和可维护性。
在接口入参中使用枚举,接收固定枚举入参,可预防入参不规范导致的意外情况,增强接口规范。

  • 枚举入参swagger样例
  • 与其他类型的入参一样,枚举传参也可以使用validation下的注解进行校验。
    @ApiModelProperty(name = "appId", value = "应用Id")
    private String appId;

    @ApiModelProperty(name = "queryScoreTypeEnum", value = "积分类型")
    @NotNull(message = "查询积分类型值不能为空")
    private QueryScoreTypeEnum queryScoreTypeEnum;
  • mybatis-plus 对枚举入参的解析
  1. 若枚举入参直接传入,mybatis-plus会将枚举映射为String类型入参
    例:定义枚举如下,若入参为DIS_INLAY,打印sql会发现,入参是DIS_INLAY(String),因为mybaits-plus不会去找寻DIS_INLAY的flag值是多少。
public enum SystemFlagEnum {
    INLAY(1),

    DIS_INLAY(0);

    private int flag;

    public int getFlag() {
        return flag;
    }
    public void setFlag(int flag) {
        this.flag = flag;
    }
    SystemFlagEnum(int flag) {
        this.flag = flag;
    }
}
  1. xml中如何接收枚举值
    #{SystemFlagEnum.flag}
    枚举名称.枚举中定义的参数 (定义的参数需要定义set,get方法,否则sql一样报错)
    原文作者:轻点 别打脸
    原文地址: https://blog.csdn.net/loney_wolf/article/details/104502180
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。