Spring-bean的生命週期小記

記錄spring in action中講解 

1.傳統:new進行實例化---->使用------>垃圾回收

2.spring:  bean 裝載到Spring應用上下文的過程

  • Spring 對bean進行實例化
  • Spring 將值和bean的引用注入到bean對應的屬性中
  • 如果bean實現了BeanNameAware接口,Spring將bean的ID傳遞給setBeanName()方法
  • 如果bean實現了BeanFactoryAware接口,Spring將調用setBeanFactory()方法,將BeanFactory容器實例傳入
  • 如果bean實現了ApplicationContextAware接口,Spring將調用setApplicationContext()方法,將bean所在的應用上下文的引用傳入進來
  • 如果bean實現了BeanPostProcessor接口,Spring將調用他們的postProcessBeforeInitialization()方法
  • 如果bean實現了InitializingBean接口,Spring將調用他們的afterPropertiesSet()方法
  • 如果bean實現了BeanPostProcessor接口,Spring將調用他們的postProcessAfterInitialization()方法
  • bean已經準備好了,一直在應用的上下文中,直到應用上下文被銷燬
  • bean實現DisposableBean接口,Spring將調用destroy()接口方法/bean使用destroy-method聲明瞭銷燬方法,該方法也會被調用;這個是實現了自己寫的銷燬的方法

總結:實例化--屬性賦值--初始化---銷燬

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章