多对多关系的属性(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