Hallo,
folgendes Szenario:
Eine Anwendung hat zwei Entitäten der Klasse Konto. Von der einen Entität wird ein Betrag abgebucht, auf der anderen aufgebucht. Gleichzeitig soll eine Entity der Klasse Kontobewegung erzeugt werden, die nur die IDs der beiden Konten und den Betrag enthält. In dem Code den ich vorliegen habe passiert folgendes:
kontoVon.setzeNeuenKontostand(AlterKontoStand-Betrag);
kontoZu.SetzeNeuenKontoStand(AlterKontoStand+Betrag);
kontoBewegung = new KontoBewegung(KontoVon.id, KontoZu.id)
em.merge(KontoVon)
em.merge(KontoZu)
em.merge(kontoBewegung)
(Entschuldigt den Pseudo-Code)
Jetzt wird doch aber intern keine Transaktion draus, oder? Muss aber, denn die Kontostände sollen nur geändert werden, wenn beide gesetzt wurden. Wie kann man sowas umsetzen?
Vielen Dank für eure Hilfe!
folgendes Szenario:
Eine Anwendung hat zwei Entitäten der Klasse Konto. Von der einen Entität wird ein Betrag abgebucht, auf der anderen aufgebucht. Gleichzeitig soll eine Entity der Klasse Kontobewegung erzeugt werden, die nur die IDs der beiden Konten und den Betrag enthält. In dem Code den ich vorliegen habe passiert folgendes:
kontoVon.setzeNeuenKontostand(AlterKontoStand-Betrag);
kontoZu.SetzeNeuenKontoStand(AlterKontoStand+Betrag);
kontoBewegung = new KontoBewegung(KontoVon.id, KontoZu.id)
em.merge(KontoVon)
em.merge(KontoZu)
em.merge(kontoBewegung)
(Entschuldigt den Pseudo-Code)
Jetzt wird doch aber intern keine Transaktion draus, oder? Muss aber, denn die Kontostände sollen nur geändert werden, wenn beide gesetzt wurden. Wie kann man sowas umsetzen?
Vielen Dank für eure Hilfe!