假设我必须拥有实体类 Person 和 Book,它们都有一个字段名称 date(类型为 java.util.Date 的 pe),它代表 Person 的出生日期和 Books 的发布日期,当然两者都不是唯一的。现在在 Entity 类 Person 中,我想要一个与 Books 的关系 (ManyToMany),它返回在此人出生日期发布的所有 Books。这可能吗?如果可以,我必须如何定义 ManyToMany 关系(和 JointTable)?请注意,该字段在两个实体中都称为日期,并且不是唯一的。
我试过了
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(
name = "test",
joinColumns = @JoinColumn(name = "date", unique=false),
inverseJoinColumns = @JoinColumn(name = "date", unique=false)
)
但它会在开始时导致异常( org.hibernate.MappingException: Repeated column in mapping for collection)
我试过了
@ManyToMany(fetch = FetchType.LAZY)
@JoinTable(
name = "test",
joinColumns = @JoinColumn(name = "date_person", unique=false),
inverseJoinColumns = @JoinColumn(name = "date_book", unique=false)
)
但它会导致创建一个空表。我肯定错过了什么。