美文网首页
Spring AOP

Spring AOP

作者: verk | 来源:发表于2019-03-31 23:34 被阅读0次

    1.Spring AOP 代理类:ProxyFactory

    待补充

    2.代理何时被注入

      在bean初始化过程中,代理可以被AbstractAutoProxyCreator(实现了SmartInstantiationAwareBeanPostProcessor接口)的子类在2个地方被创建:

    1. postProcessBeforeInstantiation 实例化前,一般用于存在TargetSourceCreator时,由TargetSourceCreator创建TargetSource。创建代理后,直接返回代理Bean,不需要进行Bean的属性注入和后置方法处理。
    2. postProcessAfterInitialization Bean在属性注入和初始化后,生成代理Bean。Spring中大部分代理是通过该方式生成的。

    3.postProcessAfterInitialization源码流程解析

    1. 判断是否为earlyProxyReferences

    2. wrapIfNecessary是否需要代理Bean

    3. getAdvicesAndAdvisorsForBean 获取适用的Advisior

    4. 查找所有advisor

    5. 查找EligibleAdvisors

    image.png

    6. 总结

    1. 判断bean是否需要代理
    2. 查找所有advisior
    3. 查找Eligible advisor
    4. 调用proxyFactory创建代理

    相关文章

      网友评论

          本文标题:Spring AOP

          本文链接:https://www.haomeiwen.com/subject/wdwubqtx.html