spring容器擴展點

spring容器擴展點

使用BeanPostProcessor自定義bean實例

控制實例化邏輯和依賴解析。對於多個BeanPostProcessor,可以實現Ordered接口來控制調用順序。注意,操作的是Bean實例。同時,BeanPostProcessor只歸屬於某一個容器,不具有繼承關係。

對於調用順序,如果是通過xml配置自動檢測,則由ApplicationContext容器控制(Ordered起作用);如果是通過編程方式,則Ordered不起作用,順序只和註冊順序有關;調用順序,編程方式總是優先於配置方式。

例如:RequiredAnnotationBeanPostProcessor

使用BeanFactoryPostProcessor自定義bean配置元數據

注意,操作的是BeanDefinition實例。同樣,可以實現Ordered接口來控制調用順序。

例如:PropertyOverrideConfigurer、PropertyPlaceholderConfigurer


分享到:


相關文章: