Ich habe diesen Code:Wie kann ich eine Transaktion im Frühling mit JPA abbrechen?
run big query: Select all unprocessed objects from table A
for each result
create or update an output object in table B
update input object: Set it to "processed"
Ich möchte eine Transaktion über die Schleife haben, also nach einer Reihe von Eingangs verarbeitet wird, sollten die aktualisierten Objekte begangen werden, so dass, wenn das Programm abbricht, Es wird nicht alle Zeilen erneut verarbeiten, sondern mit der fehlerhaften Zeile beginnen.
Ich verwende Spring 2.5, Hibernate 3.4 und JPA (d. H. Ich habe eine EntityManager
).
Wie mache ich das? Ich habe versucht, em.getTransaction().commit()
in der Schleife anzurufen, aber Frühling lässt das nicht zu.