Spring 管理事务的⽅式有几种?
1. 编程式事务,在代码中硬编码 (不推荐使用)
2. 声明式事务,在配置⽂件中配置(推荐使用)
声明式事务⼜分为两种:
2.1 基于XML的声明式事务
- 配置事务管理器
<!-- 配置事务管理器 ,封装了所有的事务操作,依赖于连接池 -->
<bean id="transactionManager"
class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"></property>
</bean>
- 配置事务模板对象
<!-- 配置事务模板对象 -->
<bean id="transactionTemplate"
class="org.springframework.transaction.support.TransactionTemplate">
<property name="transactionManager" ref="transactionManager"></property>
</bean>
2.2 基于注解的声明式事务
在类上添加 @Transaction 注解