Встречается на собеседованиях • сегодня
Что такое Propagation в Transactional
Propagation определяет поведение транзакции при вызове одного метода с аннотацией @Transactional из другого. Основные варианты:
- REQUIRED (по умолчанию) - если транзакция есть, используется существующая, иначе создается новая
- REQUIRES_NEW - всегда создает новую транзакцию, приостанавливая текущую
- SUPPORTS - работает в транзакции, если она есть, но не создает новую
- NOT_SUPPORTED - выполняется без транзакции, приостанавливая текущую
- MANDATORY - требует активной транзакции, иначе исключение
- NEVER - требует отсутствия транзакции, иначе исключение
- NESTED - создает вложенную транзакцию (поддерживается не всеми СУБД)
Пример:
java
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void updateData() {
// Будет выполняться в новой транзакции
}
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы