多对多关系的属性(hibernate)

我有实体类A和C。它们正在映射表tblA和tblC,并且它们之间具有多对多关系,而tblB可以在它们之间进行映射。tblB包含A_ID,C_ID和SetDate,最后一个是它的设置日期,因此是关系的属性。我的问题是,如何最好地映射此属性?目前,它们尚未映射,如下所示:

A:

@ManyToMany(targetEntity=C.class, cascade={ CascadeType.PERSIST, CascadeType.MERGE } )

@JoinTable(name="tblB", joinColumns=@JoinColumn(name="A_ID"), inverseJoinColumns=@JoinColumn(name="C_ID") )

private Collection<C> Cs;

C:

@ManyToMany( cascade = {CascadeType.PERSIST, CascadeType.MERGE}, mappedBy = "Cs", targetEntity = A.class )

private Collection<A> As;

我应该如何从中获取tblB.SetDate?

干杯

回答:

据我所知, 以这种方式映射它,您必须 ,并且将B放在中间。您的日期将是B的属性。


由于缺乏灵活性,因此Hibernate文档建议通常避免使用“多对多”,并从一开始就使用这两种关系。

以上是 多对多关系的属性(hibernate) 的全部内容, 来源链接: utcz.com/qa/413351.html

回到顶部