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

Какой опыт с транзакциями

Работал с транзакциями в Spring (@Transactional) и JDBC. Основные моменты:

  • Уровни изоляции (READ_COMMITTED, SERIALIZABLE и др.)
  • Распространение (PROPAGATION_REQUIRED, PROPAGATION_REQUIRES_NEW)
  • Управление вручную через TransactionTemplate или JDBC (connection.setAutoCommit(false))

Пример Spring-транзакции:

java
@Transactional(isolation = Isolation.READ_COMMITTED, propagation = Propagation.REQUIRED)
public void transferMoney(Account from, Account to, BigDecimal amount) {
    from.debit(amount);
    to.credit(amount);
}

Сталкивался с проблемами: deadlocks, long transactions, оптимистичные/пессимистичные блокировки. Для тестирования использовал @Transactional в тестах с откатом изменений.

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

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

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

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