学习目标:
掌握SSM知识
学习内容:
1、Spring的事务控制
对应Spring_Demo中的day9_spring_tx项目
学习笔记
1 编程式事务控制相关对象
1.1 PlatformTransactionManager
- 平台事务管理器
1.2 TransactionDefinition
- 事务定义对象
![]()
SSM学习-Day9学习目标:学习内容:学习笔记 ![]()
SSM学习-Day9学习目标:学习内容:学习笔记
1.3 TransactionStatus
- 事务状态
2 基于XML的声明式事务控制
2.1 什么是声明式事务控制
![]()
SSM学习-Day9学习目标:学习内容:学习笔记
2.2 声明式事务控制快速入门
<!-- 配置一个平台事务管理器-->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!-- 通知 事务的增强-->
<tx:advice id="txAdvice" transaction-manager="transactionManager">
<!-- 设置事务属性信息-->
<tx:attributes>
<tx:method name="*"/>
</tx:attributes>
</tx:advice>
<!-- 配置事务的AOP织入-->
<aop:config>
<aop:advisor advice-ref="txAdvice" pointcut="execution(* com.example.service.impl.*.*(..))"></aop:advisor>
</aop:config>
applicationContext.xml
@Override
public void transfer(String outMan, String inMan, double money) {
//开启事务
accountDao.out(outMan,money);
int i = 1/0;
accountDao.in(inMan, money);
//提交事务
}
AccountServiceImpl.java
2.3 切点方法的事务参数的配置
![]()
SSM学习-Day9学习目标:学习内容:学习笔记
3 基于注解的声明式事务控制
3.1 快速入门
<!-- 配置一个平台事务管理器-->
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource"/>
</bean>
<!-- 事务的注解驱动-->
<tx:annotation-driven transaction-manager="transactionManager"/>
applicationContext.xml
@Transactional
public void transfer(String outMan, String inMan, double money) {}
AccountServiceImpl.java
3.2 注解配置声明式事务控制解析
![]()
SSM学习-Day9学习目标:学习内容:学习笔记