共同点
- 都是BeanPostProcessor
- 都有可能将某个bean包装成一个代理对象,增加一些拦截器功能
不同点
- APC (AutoProxyCreator)
在整个容器的范围查找所有的匹配当前bean的拦截器,包装成Spring Advisors为当前bean创建代理对象
- AbstractAdvisingBeanPostProcessor
自身内置一个 Advisor,检查当前bean是否符合应用该 Advisor 的条件,符合的话将自己的 Advisor 包裹到当前bean(必要的时候为当前bean创建代理对象以便包裹自己的Advisor)
检查某个 Advisor 是否可应用到某个 bean 上的方法 : AopUtils#canApply