클라이언트가 "연극"을 만들기 위해 연결할 수있는 카드 게임용 자바 기반 서버를 만들고 있습니다. 각 "게임"(Java 클래스)은 104 개의 카드로 된 데크 (보통 데크 두 번)를 가지고 있습니다. 그래서 기본 클래스는 게임, 데크, 카드입니다. 게임에는 하나의 덱이 있고 덱에는 최대 104 개의 카드가 있습니다. 나는 Hibernate와 PostgreSQL 데이터베이스로 서버를위한 기본 구조를 만들었다. 내 문제는 여기에 데이터베이스를 모델링하는 방법입니다.카드 및 데크로 게임을위한 데이터베이스를 설계하는 방법
52 개의 다른 카드가 있기 때문에 에 52 개의 카드를 각각 만들 수 없습니다. "덱"표에있는 덱. 그러나 데크는 셔플해야합니다. 이 작업을 수행하는 현명한 방법이 있다고 생각하지만 데이터베이스 모델링은 내게 적합하지 않습니다.
내 머리 꼭대기에는 52 개의 행이있는 하나의 테이블 "카드"를 가질 수 있다고 상상해 보았습니다. 그런 다음 게임이 생성 될 때마다 행을 생성하고 카드 테이블에서 각 카드의 ID를 두 번 참조하는 숫자 목록 (104 개 숫자)을 보유하고있는 다른 테이블 "갑판". 그것도 좋은 생각처럼 들리니? 그리고 Java와 Hibernate로 어떻게 이것을 할 수 있습니까?
아니면 다른 방법이 있습니까? 많은 카드 게임이 있기 때문에, 나는 이것이 전에 수 백만 번 행해졌다고 생각합니다. 그리고 이것을 해결하는 몇 가지 모범 사례가 있지만 그것을 찾을 수 없었습니다. 문제에 대한 의견을 보내 주시면 감사하겠습니다. 미리 감사드립니다!
EDIT : 문제가 너무 과장되어 있고 Hibernate를 사용하여 데이터베이스에 Deck을 삽입하고 데이터베이스가 나머지 부분을 처리하도록해야합니까?