Spring事务
2023-02-14 23:42:05 0 举报
对Spring事务源码的分析
作者其他创作
大纲/内容
Spring Aop拦截执行方法
出错时回滚,并抛出异常;成功时提交事务
获取代理对象根据代理对象获取事务拦截器
调用TransactionInterceptor 的 invoke方法
DataSourceTransactionManager 的子类 JdbcTransactionManager 的实例
获取事务管理器 TransactionManager
获取到TransactionInterceptor
获取事务相关信息,并最终从DataSourceTransactionManager的doGetTransaction 方法获取事务,这一步保存数据源和连接对象的是 ThreadLocal
内部调用了 TransactionAspectSupport的 invokeWithinTransaction 方法
DynamicAdvisedInterceptor 的 intercept方法
开始执行带有 Transactional注解的方法
执行切点对应的方法
获取事务属性源实TransactionAttributeSource
获取事务信息TransactionInfo、事务状态实例TransactionStatus
0 条评论
下一页