Встречается на собеседованиях • сегодня

Как управлять транзакцией в реляционных базах данных

В Java управление транзакциями осуществляется через JDBC или JPA (Hibernate). Основные методы:

  1. JDBC:
java
Connection conn = dataSource.getConnection();
try {
    conn.setAutoCommit(false); // отключаем авто-коммит
    // выполняем SQL-запросы
    conn.commit(); // подтверждаем изменения
} catch (SQLException e) {
    conn.rollback(); // откатываем при ошибке
} finally {
    conn.setAutoCommit(true);
    conn.close();
}
  1. Spring/Spring Boot (декларативное управление):
java
@Transactional
public void transferMoney(Account from, Account to, BigDecimal amount) {
    // бизнес-логика
}

Ключевые аспекты:

  • ACID свойства (Atomicity, Consistency, Isolation, Durability)
  • Уровни изоляции (READ_UNCOMMITTED, READ_COMMITTED и др.)
  • Распространённые аннотации: @Transactional, @Transactional(propagation = Propagation.REQUIRES_NEW)

При работе с JPA/Hibernate транзакции обычно управляются через EntityManager.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы