Swiftorial Logo
Home
Swift Lessons
AI Tools
Learn More
Career
Resources

Spring Framework FAQ: Top Questions

48. How does Spring handle database transactions?

Spring abstracts transaction management via the @Transactional annotation and integrates with JTA, JDBC, Hibernate, and JPA providers.

📘 Features:

  • Declarative and programmatic transaction control.
  • Nested transactions, rollback rules, propagation options.

📥 Example:

@Service
public class BankService {

  @Transactional
  public void transferMoney(Account from, Account to, double amount) {
    from.debit(amount);
    to.credit(amount);
  }
}

🏆 Expected Output:

Entire transfer is committed or rolled back as a unit.

🛠️ Use Cases:

  • Ensure data consistency across multiple database operations.
  • Handle rollback scenarios on exceptions.