mybatis-mp - 亮点七:枚举的良好支持
mybatis-mp gitee 地址:https://gitee.com/mybatis-mp
日常开发中,枚举的存储一般以name 或 自定义code,存放到数据库;一般的框架都不支持直接以枚举作为直接参数,需要开发者自行处理
mybatis-mp为你提供了方便:
1:普通枚举(以name作为存储):直接继承 Serializable 类型即可
2:自定义code的枚举,继承 EnumSupport类;如下:
public enum TestEnum implements EnumSupport<String> { X1("a1"),X2("a2"); TestEnum(String code){ this.code=code; } private final String code; @Override public String getCode() { return this.code; } }
3:如何在mybatis-mp中直接使用枚举进行CRUD
3.1:实体类中:列字段可直接是枚举
3.2:CRUD参数中,直接可用枚举,和普通 string int long类型无差别使用;如下:
QueryChain.of(mapper) .in(Student::getType,Arrays.asList(TestEnum.X1,TestEnum.X2)).list();