后置處理器概述


--后置處理器在spring中的作用:

  后置處理器在bean初始化和實例化的過程中起着舉足輕重的作用,處理某些注解、設置某些bean參數、生成某些動態代理等等

--常用的后置處理器(BeanPostProcessor)

1、 ApplicationContextAwareProcessor
  作用:讓實現ApplicationContextAware的bean得到applicationContext(容器上下文)
  (EnvironmentAware,EmbeddedValueResolverAware,ResourceLoaderAware,ApplicationEventPublisherAware,MessageSourceAware,ApplicationContextAware
  實現這些接口的bean都是這個后置處理器處理)
2、 InitDestroyAnnotationBeanPostProcessor
3、 InstantiationAwareBeanPostProcessor(接口)
4、 CommonAnnotationBeanPostProcessor
  CommonAnnotationBeanPostProcessor執行@Resource等注解的注入,
5、 AutowiredAnnotationBeanPostProcessor
  AutowiredAnnotationBeanPostProcessor執行@Autowired注解注入
6、 RequiredAnnotationBeanPostProcessor
  RequiredAnnotationBeanPostProcessor執行@ Required注解
7、 BeanValidationPostProcessor
8、 AbstractAutoProxyCreator


-----實例化和初始化的區別
1、實例化----實例化的過程是一個創建Bean的過程,即調用Bean的構造函數,單例的Bean放入單例池中

2、初始化----初始化的過程是一個賦值的過程,即調用Bean的setter,設置Bean的屬性

之前的BeanPostProcessor作用於過程(2)前后,現在的InstantiationAwareBeanPostProcessor則作用於過程(1)前后;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM