我在Hibernate中有兩個表格與Spring Boot:「遊戲」和「類別」休眠ManyToMany關聯?
遊戲有多個類別和類別可以有多個遊戲。現在我需要一個「遊戲」和「類別」之間的表來將表中的主鍵存儲爲外鍵。
我稱之爲「Game2Categorie」表。
現在我的問題是3類應該如何在Java中看起來像?
遊戲有gid作爲PK。 類別有cid作爲PK。 Game2Categorie應該只有gid和cid作爲FK。
有人可以告訴我如何創建這三個類?
我在Hibernate中有兩個表格與Spring Boot:「遊戲」和「類別」休眠ManyToMany關聯?
遊戲有多個類別和類別可以有多個遊戲。現在我需要一個「遊戲」和「類別」之間的表來將表中的主鍵存儲爲外鍵。
我稱之爲「Game2Categorie」表。
現在我的問題是3類應該如何在Java中看起來像?
遊戲有gid作爲PK。 類別有cid作爲PK。 Game2Categorie應該只有gid和cid作爲FK。
有人可以告訴我如何創建這三個類?
您只需要爲Game
和Category
創建類別,因爲這些是您唯一的實體。我會建議從一開始就閱讀Hibernate doc以首先理解實體的概念。
然後,您將定義與@ManyToMany
的關係。然後Hibernate將使用第三個表來表示數據庫端的這種關係。您可以通過@JoinTable
定義該表的名稱。
This tutorial詳細解釋它。
我要去看看它。非常感謝你!因此,「第三」表將自動創建在我的數據庫中,對嗎? – PrestigeDev
是的,如果你使用你的實體模型來生成數據庫, G。使用'hbm2dll'或[Liquibase](https://github.com/liquibase/liquibase-hibernate/wiki),第三個表格將自動與您的實體表格一起創建。 –
我測試了一下,它工作。在Phpmyadmin,我現在也有第三張桌子。但我的問題是它是否正確,它包含2個主鍵(gameid和categoryid)和1個FK on categoryid。如果我看看它說我有2 FKs的關係。這是正確的,我想要什麼?我雖然只在這樣的「第三」表中需要FKs? – PrestigeDev
你做錯了:你應該從設計你的應用程序的域名開始,然後使用JPA/Hibernate把它「擠」到數據庫中。 – kryger