如何使用JPA2在实体中映射EnumSet(或枚举列表)

时间:2010-04-08 11:45:28

标签: mapping entity enumset

我有实体人:

@Entity
@Table(schema="", name="PERSON")
public class Person {
    List<PaymentType> paymentTypesList;
    //some other fields     
    //getters and setters and other logic
}

我有枚举PaymentType:

public enum PaymentType {
    FIXED, CO_FINANCED, DETERMINED;
}

如何持久化Person及其枚举列表(在此列表中我必须放置可变数量的枚举,可能有其中一个,或者两个或全部)

我正在使用Spring和Postgres,实体是使用JPA注释创建的,并使用Hibernate进行管理。

1 个答案:

答案 0 :(得分:1)

问问自己,PaymentType随着时间的推移会发生变化。

我会创建一个包含一个名称属性的@Entity PaymentType,并在@Many2ManyPaymentType之间创建一个Person

另一种方法:@ElementCollectionElementCollection from From Wikibooks, the open-content textbooks collection