在MyBatis-Plus 中,枚举自动转换是一个非常实用的功能,它能够将数据库中的数字类型与 Java 枚举类型进行自动映射。通过使用枚举自动转换,我们可以方便地将数据库查询结果映射到对应的枚举类型,同时也能够在保存数据时将枚举值自动转换为对应的数字类型。一、实现原理MyBatis-Plus 的枚举自动转换功能主要依赖于 Java 的...
以下介绍以下使用mybatis-plus的注解处理枚举值,当然也可以自定义注解完成枚举值的转换 实现IEnum方法 publicenumSexEnumimplementsIEnum<Integer> { MALE(1,"男"), FEMALE(2,"女"); SexEnum(Integer code, String value) {this.code = code;this.value = value; }privatefinalInteger code;privatefinalString ...
mybatis-plus实现了对“实体类指定了枚举类型,想查询时返回的是枚举值而非value值”,“插入数据时,实体赋值的是枚举类型,想入库时插入对应的value值”,“不想写其他的handler处理程序,希望能够自动处理”。 mybatis-plus对于上述的诉求都可以满足,简单的处理方案是: * 1、实现 IEnum of T * 2、注解 @EnumValu...
MyBatis-Plus中提供了通用枚举,简单来说就是将数据库中的某一字段的代替的含义转换成真实的含义将数据读给用户,用户在存储时也会将真实值转换成代替的数字存入到数据库中。举个例子:用户性别在数据库中存储为1(表示男)、2(表示女)。在读取数据时就会自动将12值转换为男或女。
2.枚举转换 (1).创建枚举 主要用到2个注解@EnumValue和@JsonValue。@EnumValue注明写入数据库字段值;@JsonValue是Jackson方式带的注解,注明response返回值。 packagecom.kinglead.demo.enums; importcom.baomidou.mybatisplus.annotation.EnumValue;importcom.fasterxml.jackson.annotation.JsonValue; ...
在Mybatis-Plus中我们可以使用枚举类型来完成这一操作,他能自动将数据库里的字段映射成我们需要的字段,例如性别,新建枚举类如下: 代码语言:javascript 复制 @GetterpublicenumGenderType{WOMEN(0,"女"),MAN(1,"男");@EnumValueprivateInteger key;@JsonValueprivateString name;GenderType(Integer key,String name)...
*性别枚举 * * @TableField need */ @TableField(value = "sex") private UserSexEnum sex; /** *邮箱 */ private String email; //省略getter setter } ``` # 3、启用枚举类型转换 定义枚举类型转换器:使用`@MappingType( IEnum.class)`,其中`IEnum`实现类是Mybatis plus枚举类型转换器 ```java ...
我们在使用ORM框架的时候,经常会碰到这种情况,比如数据库中有一个tinyint或char类型的gender字段,映射成为实体对象时倾向使用GenderEnum这样的枚举类型,因为这样使用起来比较方便,否则我们就需要手动转换枚举类型,如果这样的字段比较多,这样的手动转换还是比较费时费力的。如果我们使用的时MybatisPlus,那么处理这样的情况就...
对于这样的码表字段,一般会定义一个枚举类,做业务判断的时候直接基于枚举类进行比较。但是该字段在数据库采用的是int类型,对应的实体类中是Integer类型,因此业务操作时必须手动把枚举类与Integer进行转换,相对麻烦。 为此,MybatisPlus提供了一个处理枚举类的类型转换器,可以对枚举类型与数据库类型进行自动转换。