Ответ 1
Вам нужно что-то еще, чем аннотация @Enumerated
? Например, следующее перечисление:
public enum MyEnum {
VALUE1, VALUE2;
}
Может использоваться и аннотироваться следующим образом:
private MyEnum myEnum;
@Column(name="myenum")
@Enumerated(EnumType.ORDINAL)
public MyEnum getMyEnum() {
return myEnum
}
Вы можете указать, как перечисление должно сохраняться в базе данных с помощью свойства EnumType
enum аннотации @Enumerated
. EnumType.ORDINAL
указывает, что перечисление будет сохранено как целочисленное значение. Здесь myEnum
, установленный в VALUE1
, будет сохраняться как 0, VALUE2
как 1 и т.д.
Альтернативой является использование EnumType.STRING
для указания того, что перечисление будет сохранено с использованием имени значения перечисления, для которого установлено поле. Итак, применительно к предыдущему примеру установка поля myEnum
в MyEnum.VALUE1
будет сохраняться как VALUE1
и т.д.