hibernate多对多关系是否必须使用@ManyToMany注释并使用联接表?

hibernate多对多关系是否必须使用@ManyToMany注释并使用联接表?,hibernate,jpa,many-to-many,bidirectional-relation,Hibernate,Jpa,Many To Many,Bidirectional Relation,我在谷歌上搜索了很多与Hibernate多对多关系相关的例子。我发现所有帖子都在这种关系中使用联接表注释(@JoinTable) 我必须在多对多模式中使用@JoinTable吗 若有,原因为何 如果没有,我如何实现这种关系?您的问题的答案是肯定的,如果要为多对多关联创建架构,使用联接表是唯一可用的解决方案 为什么两个实体表(a和B)之间需要一个联接表(a.id B.id)来映射关联 例如,学生和教师,学生实体可能没有教师ID FK,教师实体可能不包含学生ID FK 我想这篇文章会有答案的 还要注

我在谷歌上搜索了很多与Hibernate多对多关系相关的例子。我发现所有帖子都在这种关系中使用联接表注释(@JoinTable)

我必须在多对多模式中使用@JoinTable吗

若有,原因为何


如果没有,我如何实现这种关系?

您的问题的答案是肯定的,如果要为多对多关联创建架构,使用联接表是唯一可用的解决方案

为什么两个实体表(a和B)之间需要一个联接表(a.id B.id)来映射关联

例如,学生和教师,学生实体可能没有教师ID FK,教师实体可能不包含学生ID FK

我想这篇文章会有答案的

还要注意双向关联,如果一方是所有者,那么另一方是反向端(即,在更新关联表中的关系值时,将忽略该值):
具有mappedBy属性的边是反向边。没有mappedBy属性的那一方是所有者。

1。对2.因为没有别的办法。3.NA.@frank为什么要避免使用联接表?我是hibernate的新手,在其他关系中联接表是不必要的,因此我不确定,所以我想知道联接表是否只是多对多的解决方案。我现在明白了,谢谢大家@DraganBozanovic,我想知道为什么联接表是多对多关系中唯一的实现,而不是像其他关系一样的实现?