假设我有实体 A、B 和 C。我想在这三个表之间创建约束。我怎样才能做到这一点?我一直在寻找,人们通常做的是创建一个只有 A 和 B 的 id 的表,然后在他的类上配置像这样的多对多关系。
@ManyToMany(cascade = {CascadeType.MERGE})
@JoinTable(name = "A_B",
joinColumns = @JoinColumn(name = "A_id"),
inverseJoinColumns = @JoinColumn(name = "B_id"),
uniqueConstraints = @UniqueConstraint(columnNames = {"A_id", "B_id"}))
但是我怎样才能完成三个类(class)呢?
问候。
最佳答案
@MapKeyJoinColumn :指定到作为映射键的实体的映射。映射键联接列位于用于表示映射的目标实体的集合表、联接表或表中。如果未指定 MapKeyJoinColumn 注释,则假定为单个连接列并应用默认值。
看看这个:- @MapKeyJoinColumn in API doc & Hibernate: How to Join three 3 tables in one join table in Annotation .
关于java - 具有三个实体的 Hibernate 约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24676189/