Когда возвращается метод flush () EntityManager? - PullRequest
1 голос
/ 21 февраля 2012

Я использую EntityManager для сохранения данных в моей базе данных.

public void save(X x){
    entityManager.persist(x);
    entityManager.flush();
    triggerDataChange();
}

После сброса данных я вызываю метод triggerDataChange () для отправки сообщения внешнему компоненту, который зависит от вновь записанных данных.

Вопрос: Можно ли рассчитывать на метод сброса, возвращающий после данных, успешно записанных в базу данных?

Спасибо за вашу помощь.

1 Ответ

1 голос
/ 27 марта 2012

Ваша транзакция такая же, поэтому, даже если транзакция откатывается, она полностью откатывается. Flush не будет совершать транзакцию, так как ее можно откатить. Так что в вашей реализации все, что вы делаете, хорошо.

...