ioc容器管理著bean的生命週期,包括bean建立、初始化、銷毀等過程。自定義初始化方法、銷毀方法,前後有4種方式來處理:
①在xml配置檔案中通過init-method和destroy-method屬性分別指定初始化、銷毀方法,或者利用@bean註解的initmethod屬性、destroymethod屬性來分別指定初始化、銷毀方法;
②讓bean實現initializingbean介面來實現初始化方法、實現disposablebean介面來實現銷毀方法;
③使用jsr250規範裡面的@postconstruct註解來註解初始化方法、使用@predestroy註解來註解銷毀方法;
④通過beanpostprocessor後置處理器介面來分別編寫初始化之前、初始化之後的方法;
注意:單例項會在容器啟動、關閉的時候,分別呼叫初始化、銷毀方法;而多例項bean會在容器啟動時呼叫初始化方法,而銷毀方法需要開發者自己去呼叫,spring自身不會呼叫多例項的銷毀方法;
第1種-第3種定義的初始化方法,會在構造方法、setter方法執行完畢之後,再去執行初始化方法;第4種方法則是緊挨著第1-3種方法的前、後來執行,下面整理下beanpostprocessor執行流程:
構造方法->
setter方法->
beanpostprocessor.postprocessbeforeinitialization方法->
自定義初始化方法(即第1-3種方式)->
beanpostprocessor.postprocessafterinitialization方法
Servlet Servlet生命週期詳解
servlet 生命週期詳解 servlet 的生命週期是由 servlet 的容器來控制的。分為 3個階段 初始化階段 執行階段 銷毀階段。servlet 容器載入 servlet 類,把它的.class 檔案中的資料讀到記憶體中。servlet 容器建立 servletconfig 物件。ser...
Activity生命週期詳解
針對上述對生命的描述,可以從三個角度來對activity的生命週期進行劃分 1.完整的activity的生命週期。即從oncreate到ondestroy之間的整個過程。2.可見的activity的生命週期。即從onstart到onstop之間的整個過程,在這個期間,activity一直處於可見的狀...
Activity生命週期詳解
在android應用程式裡,乙個activity就是乙個使用者介面。使用者與程式的互動就是通過activity來實現的,可以看成 的頁面。主activity是程式啟動的入口。應用程式成功啟動之後,呈獻給使用者的第乙個介面,即為該程式的主activity。android 的虛擬機器 vm 是使用基於棧...