彻底讲透Spring AOP动态代理,原理源码深度剖析!

时间:2021-06-28 19:07:09   收藏:0   阅读:0

1、AOP:【动态代理】定义

指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式;

2、基于注解aop的开发流程

3、AOP原理:【看给容器中注册了什么组件,这个组件什么时候工作,这个组件的功能是什么?】

注解aop开发,我们在配置类中加入了@EnableAspectJAutoProxy这个注解

我们来看一下@EnableAspectJAutoProxy是什么?

 

通过类的层级分析 AnnotationAwareAspectJAutoProxyCreator:

技术图片


我们可以清楚的看到其实它是属于InstantiationAwareBeanPostProcessor 类型的后置处理器和BeanFactoryAware;我在之前分析过IOC源码的记载过程,知道InstantiationAwareBeanPostProcessor 会在bean的初始化之前,普通后置处理器执行之前创建代理对象。BeanFactoryAware是自动装配BeanFactory,可以给容器动态注入一个我们自定的bean;

所以我们关注后置处理器(在bean初始化完成前后做事情)、自动装配BeanFactory

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!