Встречается на собеседованиях • сегодня
Вызовется ли @Transactional (Propagation: REQUIRES_NEW) метод b из @Transactional метода a
Да, метод b вызовется, но в новой транзакции, независимой от транзакции метода a. Если метод a откатится, это не повлияет на метод b, и наоборот.
Пример:
java
@Transactional
public void a() {
// Работа в транзакции A
b(); // Вызовется в новой транзакции B
// Если здесь произойдет исключение, транзакция A откатится, но транзакция B сохранится
}
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void b() {
// Работа в независимой транзакции B
}
text
Важно: если метод `a` вызывает `b` внутри себя, то `b` выполнится в новой транзакции, но если `b` выбросит исключение, оно может прервать выполнение `a`, если не перехвачено.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы