Rollback behavior depends on configured exception rules and transaction propagation. Do not assume every thrown or caught exception causes rollback.
Before you start
You should know Java classes, dependency injection and basic HTTP requests. Identify where a call crosses a framework-managed boundary. The snippets illustrate a focused mechanism; database configuration, application wiring and authentication must be supplied by the surrounding application when applicable.
The practical goal is to reason through this situation: A caught exception followed by normal return can allow the transaction to commit. Read the walkthrough first, then try the interview exercise before opening its answer. The important part is explaining the decision and its consequences, rather than remembering a definition alone.
Step-by-step walkthrough
Step 1: Identify exception policy
Rollback rules depend on exception type and configured behavior.
Step 2: Do not hide failure
Catching an exception and returning normally can permit a transaction to commit.
Step 3: Inspect persisted state
Verify rollback using the database, not only a thrown-exception assertion.
Worked scenario
A caught exception followed by normal return can allow the transaction to commit.
A service writes an order, catches a failure in a later step and returns success-like data. The transaction may commit the earlier write because the boundary observed normal completion. Propagate failure or explicitly mark rollback according to the intended contract, including checked-exception rules.
Common mistake
Defaults for checked and unchecked exceptions differ unless explicitly configured.
Verify the behavior
Test configured checked and unchecked failures and confirm which rows remain after completion.
Interview exercise
Guarantee a failed business operation rolls back.
Answer and reasoning
Configure the intended rules and propagate or mark failure appropriately; verify the resulting database state in an integration test.
Continue learning
Compare the scenario with the Spring Boot interview questions and test your understanding with the Spring Boot MCQs. For terminology and implementation details, consult the reference material.