Встречается на собеседованиях • сегодня
Как открыть новую транзакцию при вызове метода @Service
В Spring можно управлять транзакциями через аннотацию @Transactional. Для создания новой транзакции при вызове метода сервиса:
java
@Service
public class MyService {
@Transactional(propagation = Propagation.REQUIRES_NEW)
public void methodWithNewTransaction() {
// Логика, выполняемая в новой транзакции
}
}Ключевые параметры:
propagation = Propagation.REQUIRES_NEW- всегда создает новую транзакцию, приостанавливая текущую (если есть)- Можно добавить
isolation,timeout,readOnlyпри необходимости
Если метод вызывается из того же класса (не через прокси), аннотация не сработает - нужно вызывать через Spring-прокси (другой бин или self-injection).

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы