一·导入jar包:
spring事务管理需要jar包
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>5.3.11</version>
</dependency>
二·开启声明式事务
<!-- 开启spring声明式事务-->
<bean id="transaction" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
三·创建事务通知
通知是springAOP的一个概念,就相当于一个类,这里是开启事务,处理事务提交以及回滚的方法的类。
propagation:spring默认就是REQUIRED。
<!-- 创建事务通知(相当于类)-->
<tx:advice transaction-manager="transaction" id="transactionInterceptor">
<tx:attributes>
<!--设置所有方法都添加事务-->
<tx:method name="*" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
四·AOP切进去
<!-- AOP切进去-->
<aop:config>
<aop:pointcut id="txPointcut" expression="execution(* com.he.mapper.*.*(..))"/>
<aop:advisor advice-ref="transactionInterceptor" pointcut-ref="txPointcut"/>
</aop:config>
</beans>
测试:
设计一个业务,一个删除或增加,故意制造异常或错误,让事务实现回滚。