‌Spring的生命週期主

代码改变世界—北枳發表於2024-09-18

Spring的生命週期主要包括以下幾個階段‌:


  1. 例項化(Instantiation)‌:Spring IoC容器根據配置檔案或註解資訊建立Bean的例項。
  2. ‌屬性賦值(Dependency Injection)‌:Spring IoC容器為Bean的屬性設定值,這通常包括依賴注入(DI),即將其他Bean注入到當前Bean中。
  3. 初始化(Initialization)‌:在Bean的依賴注入完成後,Spring IoC容器會呼叫Bean的初始化方法,例如呼叫Bean的setter方法設定屬性值,或者執行@PostConstruct註解的方法。
  4. ‌使用(Using)‌:Bean現在可以被應用程式使用了。如果專案新增了AOP,那麼就會生成代理,如JDK代理、CGlib代理,沒有新增AOP的話,就不會生成代理。
  5. ‌銷燬(Destruction)‌:當Bean不再需要時,Spring IoC容器會呼叫Bean的銷燬方法,釋放資源並執行清理操作。如果Bean實現了DisposableBean介面或配置了destroy-method屬性,它們在這個階段會被呼叫。

Spring的生命週期的實現細節涉及多個階段和介面的使用,包括但不限於BeanFactoryPostProcessor等Bean載入過程中的前置和後置處理、InitializingBean介面的呼叫、DestructionAwareBeanPostProcessor介面的實現等。這些階段和介面共同作用,確保了Spring應用程式中的物件能夠按照預期的方式建立、初始化、使用和銷燬‌

相關文章