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

public EnumSet<MediaRole.MediaRoleEnum> mediaRoles;


但这在访问该字段时返回一个空指针。

最佳答案

只需使用:

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;

08-06 20:12