mybatis-plus 普通枚举类注解(@EnumValue)

前言

实际开发时,会遇到枚举字段如:学历(1:小学、2:初中、3:高中),前端展示小学,后端存储1

定义配置

yml文件里添加配置,定义扫描枚举类的包路径;

mybatis-plus:
  type-enums-package: com.demo.enums
定义枚举类

在枚举字段上添加**@EnumValue**注解

public enum GradeEnum {

    PRIMARY(1, "小学"),
    SECONDARY(2, "中学"),
    HIGH(3, "高中");

    GradeEnum(int code, String descp) {
        this.code = code;
        this.descp = descp;
    }

    @EnumValue
    private final int code;

    private final String descp;

    public int getCode() {
        return code;
    }

    public String getDescp() {
        return descp;
    }
}
使用枚举类

grade字段类型设置为GradeEnum

public class Student implements Serializable {

    /**
	 * serialVersionUID
	 */
	private static final long serialVersionUID = 1L;

	public Student(Long id, String name, Integer age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }

    @TableId
    private Long id;

    private String name;

    private GradeEnum grade;

}
测试使用
@Test
void crudTest() {

	Student student = new Student();
	Long id = 10086L;
	student.setId(id);
	student.setAge(188);
	student.setGrade(GradeEnum.PRIMARY);
	StudentMapper.insert(student);
    System.out.println(student);

}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Mybatis-Plus中的枚举类主要有两种使用方式。第一种是通过使用@EnumValue注解来处理枚举类型。这种方式需要在实体属性上使用@EnumValue注解,并且在数据库中对应的字段上添加EnumValue注解,用于标识该字段为枚举类型的存储字段。示例代码如下所示: ```java public class User { // ... @EnumValue private AgeEnum age; // ... } public enum AgeEnum implements IEnum<Integer> { // ... } ``` 第二种方式是直接在实体属性中使用原生的枚举类型,并且在枚举类中使用@EnumValue注解来标识对应的数据库字段。示例代码如下所示: ```java public class User { // ... private GradeEnum grade; // ... } public enum GradeEnum { // ... @EnumValue GRADE_A(1), // ... } ``` 在配置方面,需要注意在扫描枚举包时,需要配置相关的扫描路径,以确保Mybatis-Plus能够正确地扫描到枚举类。具体的配置方式可以根据使用的框架进行相应的配置,例如在Spring Boot中可以参考如下的配置方式: ```java @Configuration public class MybatisPlusConfig { @Bean public ConfigurationCustomizer configurationCustomizer() { return configuration -> { // 扫描枚举包 configuration.getTypeHandlerRegistry().register("com.example.enums"); }; } } ``` 总之,Mybatis-Plus中的枚举类使用可以通过使用@EnumValue注解或者原生枚举类型配合@EnumValue注解来处理。在配置方面,需要确保正确配置枚举包的扫描路径。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值