SpringAOP源码学习总结
1.使用@EnableAspectJAutoProxy启用aop 2.创建abstractAutoProxyCreator 使用 @EnableAspectJAutoProxy 后, 可以看到会 @Import(AspectJAutoProxyRegistrar.class) AspectJAutoProxyRegistrar将名为“org.springframework.aop.config. internalAutoProxyCreator ”的AnnotationAwareAspectJAutoProxyCreator 注册进容器,该proxyCreator是AbstractAdvisorAutoProxyCreator的子类。 初始化Spring容器的时候会在 refresh() -> registerBeanPostProcessors() 遍历实现ordered接口的__beanPostProcessors__的时候 getBean(AspectJAwareAdvisorAutoProxyCreator) . 此处成功创建了 AspectJAwareAdvisorAutoProxyCreator 。该proxyCreator 是一个abstractAutoProxyCreator的子类,是beanPostProcessor的实现.