Turowa gra webowa - stany

0

Witam
Piszę turową grę webową z wykorzystaniem Hibernete'a. Stworzyłem encje 'Player' w której znajdują się np. 'Jedzenie', 'Budynki' itp. Mam problem ze znalezieniem odpowiedniego rozwiązania problemu zmiany stanów(wartości) poszczególnych pól podczas zmiany tur. Wpadłem na 3 rozwiązania:

  • w encji 'Player' trzymać pojedyncze pola 'Jedzenie' itp. Ta opcja ma wg mnie minus w postaci nieokreślonego zachowania w przypadku chęci pobrania wartości w trakcie przechodzenia do nowej tury czyli np. gracz odświeży przeglądarkę i zobaczy nową wartość pola jedzenie, ale jeszcze starą budynków
  • tworzenie dwóch wersji encji 'Player' np. z polem 'Obecny' czyli z tej obecnej wartości byłyby odczytywane, a w drugiej zapisywane i pod koniec rundy wersja przyszła stawałaby się obecną
  • umieszczenie w encji 'Player' dwóch pól 'Jedzenie1' i 'Jedzenie2' i w zależności od parzystości nr tury pobierało i zapisywało naprzemiennie
    Bardzo proszę o pomoc w wyborze najlepszego rozwiązania, jak również czekam na inne pomysły.
2

A o transakcjach słyszał? Jeżeli jeden proces wykonuje zmiany na bazie danych, to inny proces odczytujący dostanie stare dane. Nowe będą widoczne dla innych transakcji dopiero po commitcie tej zmieniającej. To się nazywa izolacja transakcji

1 użytkowników online, w tym zalogowanych: 0, gości: 1