Sobes.tech
Back to questions
Junior — Middle
58

Каким образом можно откатить или завершить транзакцию в Hibernate?

Answer from AI

sobes.tech AI

В Hibernate для управления транзакциями используется интерфейс Transaction. Чтобы откатить или завершить транзакцию, применяются методы:

  • commit() — подтверждает изменения и завершает транзакцию.
  • rollback() — откатывает все изменения, сделанные в рамках текущей транзакции.

Пример использования:

Session session = sessionFactory.openSession();
Transaction tx = null;
try {
    tx = session.beginTransaction();
    // операции с базой
    tx.commit();
} catch (Exception e) {
    if (tx != null) tx.rollback();
    e.printStackTrace();
} finally {
    session.close();
}

Если во время транзакции происходит ошибка, вызывается rollback(), чтобы отменить все изменения и сохранить целостность данных.