使用xml方式实现事务处理
1、配置事务管理器
2、配置通知
3、配置切入点
4、配置切面(使用之前配置的通知和切入点)
数据库连接池
<!-- 配置数据库连接池-->
<bean class="com.alibaba.druid.pool.DruidDataSource" id="dataSource" destroy-method="close">
<property name="url" value="jdbc:mysql://localhost:3306/test?serverTimezone=UTC"></property>
<property name="username" value="root"></property>
<property name="password" value="160220115234cde"></property>
<property name="driverClassName" value="com.mysql.cj.jdbc.Driver"></property>
</bean>
事务管理器
<!-- 创建事务管理器-->
<bean class="org.springframework.jdbc.datasource.DataSourceTransactionManager" id="transactionManager">
<!-- 配置数据库连接池-->
<property name="dataSource" ref="dataSource"></property>
</bean>
配置通知
<!-- xml方式配置事务,tx是专门用来使用事务的-->
<tx:advice id="interceptor" >
<tx:attributes>
<!-- 配置可以添加事务的方法名前缀(可以配置多个)-->
<tx:method name="transfer" propagation="REQUIRED"/>
</tx:attributes>
</tx:advice>
配置切入点和切面
<aop:config>
<!-- 配置切入点-->
<aop:pointcut id="pt" expression="execution(* my.service.CustomerServiceImpl.*(..))"/>
<!-- 配置切面-->
<aop:advisor advice-ref="interceptor" pointcut-ref="pt"></aop:advisor>
</aop:config>