默认情况下spring事务只对RuntimeException方法进行回滚,所以如果将RuntimeException替换为Exception不会产生回滚效果的
开启事务后,我们会发现通过AnnotationDrivenBeanDefinitionPaser进行解析
类AbstractFallbackTransactionAttributeSource中computeTransactionAttribute()方法
解析事务标签
解析事务注解@Transactional使用的类SpringAnnotationTransactionParse类中parseTransactionAnnotation()方法
TransactionInterceptor提供的invoke() 是事务的增强器
获取事务:由AbstractPlatformTransactionManager的getTransaction() 方法获取事务
doBegin()做的一些处理设置隔离级别,更改自动提交设置,将当前连接绑定到当前线程