Ahoj.
V ramci jednej trojvrstvej mikroaplikacie ( cosi ako evidencia skladu,
naskladnit, vyskladnit a tak podobne )
stojim pred rozhodnutim ci a ako implementovat "undo" feature. Proste
cosi, co by dotycnemu cloveku umoznilo
vystornovat predosly, pripadne par predoslych krokov po tom, ako sa
commitli do db.
Aplikacia je klasika - vaadin + spring + hibernate + h2 ( alebo postgres ).
Prve, co ma napadlo, su sql savepoiny. Tie ale funguju len do momentu
uzavretia transakcie, pokial
ma pamat neklame.
Druhy napad bol urobit "snapshot", resp. dump celej databazy pred kazdou
takouto operaciou. To by mohlo chvilu
fungovat, velkost databazy by nemala presiahnut jednotky/desiatky MB. Co
ale v pripade, ze presiahne a ako
sa vysporiadat s viacnasobnym pristupom viacerych uzivatelov naraz, netusim.
Treti napad by bol naimplementovat nejake "oposite" metody k metodam
ktore robia zmeny na DB a stack tychto zmien,
ale do tohoto sa mi vonkoncom nechce, pretoze by to bolo neumerne vela
prace.
Neriesil niekto podobny problem? Google mi moc nepomohol.
Diky
--
Dusan