@Data@TableName("sys_role")public class Role { /** 角色类型 */ private RoleType type;} 1. 配置扫描的枚举包路径 mybatis-plus: typeEnumsPackage: com.yanyu.spring.mybatisplus.enums 1. 从结果可以看出查询出的角色类型自动转换成了枚举ADMIN 当Mybatis-plus自带的原生方法不能满足我们的需求,我们...
MyBatis-Plus中提供了通用枚举,简单来说就是将数据库中的某一字段的代替的含义转换成真实的含义将数据读给用户,用户在存储时也会将真实值转换成代替的数字存入到数据库中。举个例子:用户性别在数据库中存储为1(表示男)、2(表示女)。在读取数据时就会自动将12值转换为男或女。 这样做是可以有效地节省数据库的...
在自定义 TypeHandler 时,我们需要仔细考虑数字与枚举类型的对应关系,并编写正确的转换逻辑。同时,我们也可以在自定义 TypeHandler 中加入异常处理机制,以处理转换过程中可能出现的异常情况。 在编写 SQL 查询语句时,我们可以使用 MyBatis-Plus 的条件构造器来处理不同的情况,以确保能够正确解析枚举值。同时,我们也可以...
以下介绍以下使用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提供了优雅的实现方式。 一、枚举的使用场景和好处 在实际的使用当中,当某个对象或者某个属性,需要有多个可供选择的状态或者描述,例如人的性别,支付的状态,错误的类型等等,都可以使用枚举。 好处: (1)可读性高, 易理...
我们在使用ORM框架的时候,经常会碰到这种情况,比如数据库中有一个tinyint或char类型的gender字段,映射成为实体对象时倾向使用GenderEnum这样的枚举类型,因为这样使用起来比较方便,否则我们就需要手动转换枚举类型,如果这样的字段比较多,这样的手动转换还是比较费时费力的。如果我们使用的时MybatisPlus,那么处理这样的情况就...
1、枚举类 @GetterpublicenumSexEnum { MALE("1","男"), FEMALE("2","女"); @EnumValueprivateString sex; @JsonValueprivateString sexName; SexEnum(String sex, String sexName) {this.sex =sex;this.sexName =sexName; } } 2、出现异常原因 ...
定义枚举类型转换器:使用`@MappingType( IEnum.class)`,其中`IEnum`实现类是Mybatis plus枚举类型转换器 ```java @TableName("user") public class User { private Long id; /** *姓名 */ private String name; /** *性别枚举 * * @TableField need */ @TableField(value = "sex") @MappingType(...
2来表示女,而在代码中一般会定义成enum类型或静态常量来避免在业务代码中出现“0/1”这种魔法值,但是在数据库存储及前后端交互的时候,就需要进行转化;无论是在SQL、前端还是后台转化,都需要写相应的代码,无形中增加了开发工作量;mybatis-plus实现了对该问题的处理,能够让我们在查询数据库时,直接能够返回字段标识...