AOP调用流程
2020-09-22 21:40:32 0 举报
AOP原理之方法调用
作者其他创作
大纲/内容
invokeInitMethods
Pointcut.getMethodMatcher.matches根据切点的MethodMatcher进行校验
findAdvisorBeans去BeanFactory中找到Advisor,并创建
createProxy根据获取到的增强,生成代理对象
extendAdvisors
createAopProxy
findEligibleAdvisors找到可以应用到当前正在创建的bean的切面
invokeAwareMethods调用一些Aware方法
Pointcut.getClassFilter.matches根据切点的ClassFilter进行校验
getProxy
AopUtils.findAdvisorsThatCanApply
sortAdvisors
BeanFactoryUtils.beanNamesForTypeIncludingAncestors
Advisor[] advisors=buildAdvisors
返回代理后的bean对象
ProxyFactory.getProxy
initializeBean
getAopProxyFactory
wrapIfNecessary
getAdvicesAndAdvisorsForBean获取切面和增强
postProcessAfterInitialization初始化的后的后置处理
doCreateBean
findCandidateAdvisors先找到所有的切面Advisor
applyBeanPostProcessorsBeforeInitialization
applyBeanPostProcessorsAfterInitialization
findAdvisorsThatCanApply看是否可以适配当前创建的bean
0 条评论
下一页