我想要两个具有一对多关系的表,并由第三个表链接。我该如何处理这个问题?我想创建与此 tutorial 完全相同的东西但使用一对多而不是多对多与 unique="true"
最佳答案
在 Hibernate 中,当您使用 @OneToMany 注释而不声明 @JoinTable 或 @JoinColumn 时,将自动创建第三个表来映射关系,因此不必担心只需将 @ManyToMany 切换为 @OneToMany,只要您的关系将遵循注释的规则。
但是,您可以尝试一些显式映射,这样您甚至可以控制由 @OneToMany 注释创建的列名称。
尝试这样的事情:
public class TestClass1 {
@OneToMany
@JoinTable(name = "ADDITIONAL TABLE NAME", joinColumns = {
@JoinColumn(name = "TESTCLASS1_ID")}, inverseJoinColumns = {
@JoinColumn(name = "TESTCLASS2_ID")})
private List<TestClass2> listTestClass2;
}
祝你好运!
关于java - Hibernate 一对多映射与附加关系表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22345617/