Hallo Freunde,
wie kann ich denn bitte mithilfe meiner Current Session herausfinden, ob ein mir übergebenes Objekt völlig neu ist oder nur einen "detached"-Status besitzt?
Ich komme aufgrund der generischen Implementierung meines DAOs jedoch NICHT an den Primärschlüssel. Anhand dessen könnte ich schauen, ob er gesetzt ist. Aber diese Möglichkeit habe ich wie gesagt nicht.
Ich möchte zur Laufzeit unterscheiden, ob ich merge oder persist aufrufen muss. Ich möchte NICHT "saveOrUpdate(entity)" verwenden, da ich dann nicht mehr so schön mit Annotationen kaskadieren kann:
Code:
public E makePersistent(E entity) {
if (/* entity neu */)
sessionFactory.getCurrentSession().persist(entity);
else
sessionFactory.getCurrentSession().merge(entity);
return entity;
}
Irgendwelche Ideen?