目录
一、前言
数据库表中的有些字段值是固定的,例如性别(男或女),此时我们可以使用MyBatis-Plus的通用枚举来实现。
相关资料:mybatisplus使用通用枚举
二、数据库表添加字段sex
在数据库中新创建一个sex字段,该字段定义为int类型,长度为1即可,因为只有“男”,“女”两个选项:
三、创建通用枚举类型
在三级目录下新建一个enums包,用于存放通用枚举类型:
package com.qcby.mybatisplus.enums;
import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.Getter;
@Getter
public enum SexEnum {
MALE(1, "男"),
FEMALE(2, "女");
@EnumValue
private Integer sex;
private String sexName;
SexEnum(Integer sex, String sexName) {
this.sex = sex;
this.sexName = sexName;
}
}
四、实体类中创建相应变量
在需要用到该通用枚举类型的实体类中加入该类型的变量:
五、配置扫描通用枚举
在yml配置文件中配置相关配置进行扫描,以获取到enums包下所有文件:
六、测试
创建一个测试类进行相关测试:
@SpringBootTest
public class EnumTest {
@Autowired
private UserMapper userMapper;
@Test
public void testSexEnum(){
User user = new User();
user.setName("Enum");
user.setAge(20);
// 设置性别信息为枚举项,会将@EnumValue注解所标识的属性值存储到数据库
user.setSex(SexEnum.MALE);
// INSERT INTO t_user ( username, age, sex ) VALUES ( ?, ?, ? )
// Parameters: Enum(String), 20(Integer), 1(Integer)
userMapper.insert(user);
}
}
运行结果: