我有2个课程Writting
和User
。用户可能有一个或多个Writings。我想用hibernate
创建一个使用这些表的表。
我使用this链接作为教程。
我已经为hibernate添加了正确的依赖项,并在我的pom.xml中添加了lombock:
@Data
@Entity
public class User {
@Id
@GeneratedValue
Long id;
@OneToMany(mappedBy="user")
Collection<Writting> writings=new ArrayList<Writting>() ;
}
然后Writting
是:
@Entity
@Data
public class Writting {
@Id
@GeneratedValue
Long id;
@ManyToOne
@JoinColumn(name="userId")
User user;
}
因此,我希望它能为我提供一个由foreign key of user
和foreign key of writtings
组成的额外表格。但是,没有这样的表格?
答案 0 :(得分:0)
您尝试过的内容会在Writting
表中为您提供一个额外的列,该列保留user_Id
。在这种情况下,您已经成功地在用户和写作之间建立了生物方向关系。
但是,如果您希望hibernate为您提供额外的表,那么您必须删除它:
@ManyToOne
@JoinColumn(name="userId")
User user;
在这种情况下,您要说的是,我希望每个user
都知道他的所有writtings
,但您无法从user
中获取writting
。它会让你成为一张新桌子。叫USER_WRITINGS