Bạn có cần cái gì khác hơn so với @Enumerated
chú thích? Ví dụ, enum sau:
public enum MyEnum {
VALUE1, VALUE2;
}
thể được sử dụng và chú thích như thế này:
private MyEnum myEnum;
@Column(name="myenum")
@Enumerated(EnumType.ORDINAL)
public MyEnum getMyEnum() {
return myEnum
}
Bạn có thể chỉ định cách enum nên được tiếp tục tồn tại cơ sở dữ liệu với thuộc tính EnumType
enum của @Enumerated
chú thích . EnumType.ORDINAL
chỉ định rằng enum sẽ được tiếp tục tồn tại dưới dạng giá trị số nguyên. Ở đây, myEnum
thiết lập để VALUE1
sẽ được tiếp tục tồn là 0, VALUE2
như 1, vv
Cách khác là sử dụng EnumType.STRING
để xác định rằng enum sẽ được tiếp tục tồn bằng cách sử dụng tên của giá trị enum rằng lĩnh vực này được thiết lập để. Vì vậy, được áp dụng cho ví dụ trước, hãy đặt trường myEnum
thành MyEnum.VALUE1
sẽ tồn tại dưới dạng VALUE1
, v.v.
Nguồn
2010-04-02 20:43:49
Cảm ơn! Tôi nghĩ đó là chính xác những gì tôi đang tìm kiếm. Tôi sẽ thử nó – Thiago
Tôi có thể nhập gì vào trường @Id của lớp enum? – Thiago
@Thiago gì? Enum của bạn thường không phải là một thực thể, nó không có trường '@ Id'. Bạn có thể cập nhật câu hỏi của mình để hiển thị những gì bạn đang làm không? –