开发者

Mapping EnumSet in Hibernate

开发者 https://www.devze.com 2023-01-29 21:45 出处:网络
How to store EnumSet in the DB (using Hibernate)? @Entity public class A { public static enum SOM开发者_开发问答E_ENUM { A, B, C };

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

精彩评论

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

关注公众号