@Enumerated

用于枚举属性的映射,该属性使用枚举的 ordinal 值或 name 值。

请注意,使用 ORDINAL 值存在一定风险,因为该值是由枚举中值的顺序隐含的。也就是说,如果在枚举的中间添加了一个值,那么对序数值来说这是一个微妙的更改。从这个意义上说,我个人不建议使用序数值。

示例:枚举 ORDINAL 值
// defaults to using ORDINAL value
@Enumerated
Status status;
示例:枚举 NAME 值
@Enumerated(EnumType.STRING)
Status status;

备选方案:Ebean @DbEnumValue

JPA 标准 @Enumerated 的替代方案是 Ebean 特定的 @DbEnumValue