Spring为事务管理提供了丰富的支持,对于底层不同的事务( 如Java Transaction API (JTA), JDBC, Hibernate, Java Persistence API (JPA), and Java Data Objects (JDO))管理提供了统一的抽象编程模型,而且它的API也非常易于开发者理解和使用。
Spring事务管理分为编程式和声明式的两种。编程式事务指的是通过编码方式实现事务;声明式事务基于AOP,将具体业务逻辑与事务处理解耦。声明式事务对我们的业务代码无侵入,一般更倾向于选择它。而编程式的事务一般使用TransactionTemplate
。本文主要介绍常用的声明式事务。