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

C:

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

我怎么能得到tblB.SetDate呢?

干杯

据我所知, 不可能以这种方式映射,你必须切换到一对多和一对多的关系 ,你的B在中间。 您的日期将是B的属性。


由于缺乏进化性,Hibernate文档建议一般避免使用多对多,并从一开始就使用这两种关系。

看到

@ManyToMany Hibernate问题(可以添加额外字段吗?)

如何制作复合主键(java持久性注释)

问候,