Hibernate - Update statt delete

-AbeAdapti-

Mitglied
Hi,
Hab hier eine Datenmodell welches darauf setzt keine Einträge in der Datenbank zu löschen, sondern einfach einen validToDate wert zu setzen (legacy).
Benutze Hibernate 3.5 und ein Entitymodell
Z.b.
Code:
@Entity
class Address{
      int id;
      List children;
      Date validTo;
}


Code:
session.delete(address) wäre dann UPDATE address SET validTo=current_date() WHERE id =1

jede Tabelle hat diese Spalte. Vorteil man kann jeden Wert immer nachvollziehen.


Eventl. Lsgansätze
- mit dem DAO kann ich natürlich sagen statt delete mach einen update, problem sind die Kinder, da ich auf cascade delete setze (das Datenmodell ist sehr groß und komplex). Könnte mich vom cascade trennen wenn es eine einfache transparente lsg gibt.
- Hibernate Interceptoren können nur das event delete abfangen aber es nicht in ein updat umwandeln.
- Auf DB Ebene könnte ich on delete trigger schreiben, was aber sehr viel arbeit ist.

Auch das herausziehen der Daten mit WHERE validToDate>=currentDate() würde ich gerne automatisieren.


Kennt ihr dieses Problem? Vielleicht eine Idee dazu. Danke
 
Zurück