Spring事务管理分成两类
1.编程式事务管理 [手动编写代码进行事务管理 ]
1.1 spring配置文件中
配置事务管理器 transactionManager
注入连接池
定义事务管理模板 transactionTemplate
注入transactionManager
1.2 业务层实现类中
注入事务管理模板 transactionTemplate
调用execute在匿名类的doInTransactionWithoutResult中处理事务
**
2.声明式事务管理
2.1 基于TransactionProxyFactoryBean的事务管理
2.1.1 spring配置文件中
配置事务管理器 transactionManager
注入连接池
配置事务代理transactionProxyFactoryBean
注入业务层
name:target ref:业务层类
注入事务管理器
注入事务属性 transactionAttributes
props
prop key:方法名 >传播 超时 隔离属性<
2.1.2 测试类中
为业务类注入加强代理类 transactionProxyFactoryBean
2.2 基于AspectJ的XML方式
2.2.1 spring配置文件中
配置事务管理器 transactionManager
注入连接池
配置事务的通知 tx:advice
配置通知属性中的方法
配置切面 aop:config
配置切入点 aop:pointcut
配置切入面 aop:advisor
2.4 基于注解方法
2.4.1 spring配置文件中
配置事务管理器 transactionManager
开启事务注解
2.4.2 业务类中使用@Transactional