mybatisplus 枚举转换

mybatisplus里有使用枚举进行存储 以及返回信息的功能即

@Getter
public enum PublishStatusEnum implements IBaseEnum {
    @JsonEnumDefaultValue
    PUBLISHED(1, "已发布"),
    UNPUBLISHED(2, "未发布");
    @EnumValue
    private Integer code;
    @JsonValue
    private String message;

    PublishStatusEnum(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    @JsonCreator
    public static PublishStatusEnum getByCode(Integer code) {

        for (PublishStatusEnum item : PublishStatusEnum.values()) {

            if (item.getCode().equals(code)) {
                return item;
            }
        }
        return null;
    }
}

其中@JsonValue代表了Json化后的类型,比如返回给前端的数据,@EnumValue是存储到数据库的数据按这个枚举就是1,而前端传入的数据则需要是PUBLISHED,或者UNPUBLISHED,这样后端用enum属性接收时候才能转化为对饮枚举,而有遇到一种属性List<PublishStatusEnum>,在存入库时会出错 需要在对应入库entity上加上autoResultMap=true,这样出入库字段才能自动转换

相关推荐

  1. mybatisplus 转换

    2024-03-22 22:28:02       35 阅读
  2. C# 字符串和类型互相转换

    2024-03-22 22:28:02       29 阅读
  3. 折半(题目)

    2024-03-22 22:28:02       72 阅读
  4. Kotlin

    2024-03-22 22:28:02       59 阅读
  5. C/C++

    2024-03-22 22:28:02       60 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-22 22:28:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-22 22:28:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-03-22 22:28:02       87 阅读
  4. Python语言-面向对象

    2024-03-22 22:28:02       96 阅读

热门阅读

  1. android中(activity中)按键事件的处理

    2024-03-22 22:28:02       42 阅读
  2. ChatGPT:探索创新写作方式,提升论文撰写效率

    2024-03-22 22:28:02       48 阅读
  3. Ethereum 和 Layer2的关系

    2024-03-22 22:28:02       39 阅读
  4. MySQL提权方式

    2024-03-22 22:28:02       39 阅读
  5. 【noip普及组】棋盘

    2024-03-22 22:28:02       41 阅读