- 声明式事务
- 通过XML配置,声明某方法的事务特征
- 通过注解,声明某方法的事务特征
- 编程式事务
- 通过TransactionTemplate管理事务,并通过它执行数据库操作
@Transactional注解
- isolation:事务隔离级别
- propagation:事务传播机制
- REQUIRED:支持当前事务(外部事务),如果不存在则创建新事物
- REQUIRES_NEW:创建一个新事务,并且暂停当前事务
- NESTED:如果当前存在事务,则嵌套在该事务中执行,否则同REQUIRED
TransactionTemplate类
- .setIsolationLevel(TransactionDefinition.):设置隔离级别
- .setPropagationBehavior(TransactionDefinition.):设置传播机制
- .execute(new TransactionCallback