Spring 中的后置处理器分为 BeanFactory 后置处理器和 Bean 后置外理器,它们是 Spring 底层源码架构设计中非常重要要的一种机制,同时开发者也可以利用这两种后置处理器来进行扩展。BeanFactory 后置处理器表示针对 BeanFactory 的处理器,Spring 启动过程中,会先创建出 BeanFactory 实例,然后利用 BeanFactory 处理器来加工 BeanFactory,比如 Spring 的扫描就是基于 BeanFactory 后置处理器来实现的,而 Bean 后置处理器也类似,Spring 在创建一个 Bean 的过程中,首先会实例化得到一个对象,然后再利用 Bean 后置处理器来对该实例对象进行加工,比如我们常说的依赖注入就是基于一个 Bean 后置外理器来实现的,通过该 Bean 后置处理器来给实例对象中加了 @Autowired 注解的属性自动赋值,还比如我们常说的 AOP,也是利用一个 Bean 后置处理器来实现的,基于原实例对象,判断是否需要进行 AOP 如果需要,那么就基于原实例对象进行动态代理,生成一个代理对象。