开发者

Mapping EnumSet in Hibernate

How to store EnumSet in the DB (using Hibernate)?

@Entity
public class A
{
 public static enum SOM开发者_开发问答E_ENUM { A, B, C };

 private EnumSet<SOME_ENUM> myEnumSet = EnumSet.of(SOME_ENUM.A, SOME_ENUM.B);

 ...
 ...
}

If I try to persist the above, I get exception of course. I wanted to use @CollectionOfElements, but it is deprecated. Is there any alternative of @CollectionOfElements?

Is there a way to store EnumSet in a single column without writing UserType?

Thanks!


hibernate does not have built in support for such things. Note that when dealing with hibernate and collections you should really only be specifying an interface; in this case Set. Hibernate proxies all collections so it can efficiently deal with lazy loading.

This is not to say this is difficult. See this documentation

https://forum.hibernate.org/viewtopic.php?p=2300843

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜