JPA和一组枚举值

时间:2012-06-01 18:29:23

标签: java hibernate jpa

有没有一种简单的方法来存储使用JPA(使用Hibernate)的Enum项目的集合/列表? 列表中可能没有重复项。 我目前正在尝试:

public EnumSet<MediaRole.MediaRoleEnum> mediaRoles;

但是这会在访问字段时返回空指针。

1 个答案:

答案 0 :(得分:2)

只需使用:

List<MediaRole.MediaRoleEnum> mediaRoles;
Set<MediaRole.MediaRoleEnum> mediaRoles;

取决于您的需求。查看Which Java Type do you use for JPA collections and why?

在映射文件中:

<attributes>
    <element-collection name="mediaRoles"/>
</attributes>

如果您使用注释,只需使用等效的注释:

@ElementCollection
List<MediaRole.MediaRoleEnum> mediaRoles;