Вложенные @Transactional
можно ли вложить @ транзакционные аннотированные методы весной? Рассмотреть что-то вроде этого:
@Transactional
public void a() {
obj.b();
}
@Transactional
public void b() {
// ...
}
что происходит в таком случае, если я откатываюсь в b() и откат в a() ?
1 ответов
второй @Transactional аннотация по методу b() не требуется, потому что по умолчанию @Transactional имеет распространение REQUIRED, поэтому метод называется методом a() будет транзакций. Если вы хотите начать новую транзакцию в методе, называемом методом a() вам нужно будет изменить правила распространения. Читайте о Распространение Транзакций.