seniorSpring

What is the difference between @Transactional propagation types in Spring?

Updated May 17, 2026

Short answer

Propagation defines how transactions behave when a method calls another transactional method.

Deep explanation

Spring provides propagation levels like REQUIRED, REQUIRES_NEW, NESTED, SUPPORTS, NOT_SUPPORTED, MANDATORY, and NEVER. REQUIRED joins existing transaction or creates a new one. REQUIRES_NEW suspends current transaction and creates a new independent one. These control atomicity boundaries in complex service orchestration.

Unlock with a Pro subscription to view this section.

View pricing

Real-world example

No real-world example available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Common mistakes

No common mistakes listed yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

Follow-up questions

No follow-up questions available yet.

Unlock with a Pro subscription to view this section.

Upgrade to Pro

More Spring interview questions

View all →