2012-06-01 71 views
2

是否有一種簡單的方法來存儲使用JPA(與Hibernate)的枚舉項集/列表? 列表中可能沒有重複項。 我目前嘗試:JPA和一組枚舉值

public EnumSet<MediaRole.MediaRoleEnum> mediaRoles; 

但是,當訪問該字段時,它返回一個空指針。

回答

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; 
+0

我不想重複,並使用該列表將允許這一點。有沒有一種簡單的方法來防止這種情況發生,如果使用上述方法,就像使用getters和setter作爲列表一段時間沒有幫助一樣。 –

+0

請檢查編輯。 – Butaca

+0

另外,您應該更新有關非重複的問題。 – Butaca