jpa和mybatis支持Java枚举类型
程序员文章站
2022-04-23 11:50:12
...
1. JPA
@Enumerated(EnumType.INTEGER)
private Integer status;
2. MyBatis
mybatis对枚举类型提供了两种处理器:
- org.apache.ibatis.type.EnumTypeHandler【枚举实例转换为实例名称的字符串】
- org.apache.ibatis.type.EnumOrdinalTypeHandler 【将枚举实例的ordinal属性作为取值,取到实际的值】
</resultMap>
<result column="status" property="status" typeHandler="org.apache.ibatis.type.EnumOrdinalTypeHandler" />
</resultMap>
具体实现:https://blog.csdn.net/intersting/article/details/93768803
3. MyBatisPlus
#配置枚举 支持通配符 * 或者 ; 分割
mybatis-plus:
type-enums-package: com.demo.mybatisplus.constant
configuration:
default-enum-type-handler: org.apache.ibatis.type.EnumOrdinalTypeHandler
@TableField(value = "status")
@EnumValue
private Integer status;
public enum Status {
/**
* 未屏蔽状态
*/
UN_SHIELD(0, "未屏蔽"),
/**
* 已屏蔽状态
*/
SHIELD(1, "已屏蔽");
private int key;
private String status;
Status(int key, String status) {
this.key = key;
this.status = status;
}
public int getKey() {
return key;
}
public String getStatus() {
return status;
}
}