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. 事物隔离级别的实现
待续
.
.
.