Какие уровни propagation есть в @Transactional?

Senior
290 просмотров
AFK Offer AI

REQUIRED (default) — использовать текущую транзакцию или создать новую. REQUIRES_NEW — всегда новая, текущая приостанавливается. SUPPORTS — если есть транзакция — использовать, нет — без неё. NOT_SUPPORTED — выполнить без транзакции, текущая приостанавливается. MANDATORY — требует существующую, иначе exception. NEVER — без транзакции, если есть — exception. NESTED — вложенная с savepoint (только JDBC). На практике 90% — REQUIRED, REQUIRES_NEW — для аудита/логов, которые должны сохраниться даже при rollback основной.

Следующий вопрос

Что такое HikariCP и почему он стал стандартом для connection pooling?