在spring 容器初始化 bean 和銷燬前所作的操做定義方式有三種:spring
第一種,經過@PostConstruct 和 @PreDestroy 方法 實現初始化和銷燬bean以前進行的操做xml
第二種,經過 在xml中定義init-method 和 destory-method方法接口
第三種,經過bean實現InitializingBean和 DisposableBean接口源碼
有人問,爲何是這樣呢? 這是spring定義的規則,看下源碼是比較簡單的。it