Spring源码解析(十)事物(待续)

1.@EnableTransactionManagement

想Spring 注册AutoProxyRegistrar和ProxyTransactionManagementConfiguration两个bean

AutoProxyRegistrar的作用是注册InfrastructureAdvisorAutoProxyCreator 这个beanPostProcessor 在bean的初始化方法中开启aop

ProxyTransactionManagementConfiguration 是一个配置类,定义了三个bean

BeanFactoryTransactionAttributeSourceAdvisor 一个是Advisor
TransactionAttributeSource
TransactionInterceptor

AnnotationTransactionAttributeSource就是用来判断某个类上是否存在@Transactional注解, 或者判断某个方法上是否存在@Transactional注解的。

TransactionInterceptor就是代理逻辑,当某个类中存在@Transactional注解时,到时就产生一个 代理对象作为Bean,代理对象在执行某个方法时,最终就会进入到TransactionInterceptor的 invoke()方法。

2. 事物隔离级别的实现

待续

.

.

.

猜你喜欢

转载自blog.csdn.net/caicongyang/article/details/123032052