我正在为卡片游戏创建一个基于Java的服务器,客户端可以通过它连接到“玩”。每个“游戏”(Java级)拥有一副104张牌(一张正常牌组成两倍)。所以我得到的基本课程是:游戏,卡组,卡片。一场比赛将有一个甲板,一个甲板最多有104个牌。我用Hibernate和PostgreSQL数据库为服务器制作了基础结构。我的问题在于如何建模数据库。如何使用卡片和卡片设计游戏数据库
由于只有52张不同的卡牌,所以没有必要为每张制作52张卡牌“卡座”表格中的甲板。但是,甲板需要洗牌。我想这样做有一些聪明的方法,但数据库建模不是我的强项。
在我的头顶,我想我可以有一个表“卡”有52行,每一行对应一个卡。然后,另一个桌面“Deck”将在每次创建游戏时创建一行,并保存一张数字列表(104个数字),该列表在Card-Table中引用每个卡片ID两次。这听起来像是个好主意吗?我怎么用Java和Hibernate来完成这个任务?
或者是否有其他方式应该这样做?由于有很多纸牌游戏,我猜这已经做过一百万次了,并且有一些解决此问题的最佳实践,但是我一直无法找到它。我很感谢有关此事的任何投入。提前,谢谢!
编辑:我是否已经解决了这个问题,并且应该使用Hibernate插入一个Deck到数据库并让其他数据库处理?