Spring: @Transactional
Повтори, как Spring задаёт границы транзакций и обрабатывает ошибки. Разбери работу @Transactional, присоединение к существующей транзакции или создание новой, условия отката и ошибки, из-за которых ожидаемая транзакция не срабатывает.
Вопросы
- Как спринг работает с транзакциями? Расскажите про аннотацию @Transactional.
- Какие виды propagation есть у @Transactional?
- Какие атрибуты есть у @Transactional?
- Почему @Transactional может «не работать»? Перечисли случаи
- Какие исключения откатывают транзакцию и что такое UnexpectedRollbackException?
- Что реально даёт readOnly = true?
- Почему нельзя делать долгие и внешние операции внутри транзакции?
- Как программно управлять транзакциями? TransactionTemplate
- Что такое @TransactionalEventListener?
- Уровни изоляции в @Transactional и связь с БД