我是 JPA 新手,正在学习。当我在 SQL 中有多对多关系黑白表时,例如 Author 和 Book:我使用了带有复合主键的连接表 AuthorBook。
应该如何在 JPA 中做到这一点:我应该只创建两个实体 Author 和 Book 并使用其中一个映射创建多对多关系(例如在 Author 中),并创建另一个自己的关系所有者:在 Books 中(使用 joinColumns)。
或者我还应该使用 JPA “加入”第三个实体 AuthorsBooks 吗? 什么方法是正确的呢?实际上有不同的方法还是唯一的方法是更好的方法?
除了我的具体问题之外,我想知道是否有人知道关于这个问题的一个很好的例子/教程? (我找不到好的)谢谢!
最佳答案
我找到了不同的来源和解决方案。我认为最好的就像这里:认为在这里https://en.wikibooks.org/wiki/Java_Persistence/ManyToMany 他们说这是创建具有多对多关联的两个实体的标准方法,但是,如果联接表应该具有附加列,那么最好的方法是创建三个实体,包括用于联接表的实体(链接中给出了两种情况的示例)
关于java - 多对多 : what is the correct or best way to go in JPA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48196892/