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