想知道如何执行How to have 2 collections of the same type in JPA?中指定的内容,但使用EclipseLink而不是Hibernate。见下面的帖子:
我在JPA中有2个实体:Entry和 评论。条目包含两个 评论对象的集合。
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@IndexColumn(base = 1, name = "dnr")
private List<Comment> descriptionComments = new ArrayList<Comment>();
@OneToMany(fetch = FetchType.EAGER, cascade = CascadeType.ALL)
@IndexColumn(base = 1, name = "pmnr")
private List<Comment> postMortemComments = new ArrayList<Comment>();
存储此类对象,JPA + Hibernate 创造&#34;进入&#34;表,&#34;评论&#34;表 和SINGLE&#34; Entry_Comment&#34;:
创建表Entry_Comment(Entry_id 整数不为null, postMortemComments_id整数不是 null,pmnr整数不为null, descriptionComments_id整数不 null,dnr integer not null,primary key(Entry_id,dnr),唯一 (descriptionComments_id),独一无二 (postMortemComments_id))
存储对象失败 descriptionComments_id和 postMortemComments_id不能是&#34;不是 空&#34;在同一时间。
如何存储包含两个对象的对象 使用相同类型的集合 JPA +休眠?
我确信将该解决方案转换为EclipseLink非常简单,但我似乎无法弄明白。感谢
答案 0 :(得分:3)
您可以按@JoinTable