spring工厂生产对象时对象生命周期的三个阶段
spring生產對象的生命周期包括創建、初始化、銷毀。
一、創建
spring創建bean是何時創建的?
如果該bean是單例的,那么和工廠applicationContext的創建一起被創建;如果該bean是多例的,那么在使用時才會被創建。
二、初始化,一般用于資源的初始化
spring將bean注入后,會調用對象的初始化方法。
對象的初始化方法spring提供了兩種方法。
1、實現spring提供的InitializingBean接口,通過實現afterPropertiesSet() 方法初始化對象。(與spring框架存在耦合)
2、提供一個自定義myinit()方法,在創建該bean時指定初始化方法init-method。
如果提供了兩種初始化方法,那么先執行afterPropertiesSet()再執行myInit()。
三、銷毀,一般用于資源的釋放
銷毀方法只適用于scope為singleton的對象。
spring銷毀bean前,會首先調用對象的銷毀方法,再完成銷毀操作。
spring什么時候銷毀bean?
在關閉spring工廠時,spring會銷毀所有的bean。
對象的銷毀方法spring提供了兩種方法。
1、實現spring提供的DisposableBean接口,通過實現destroy() 方法初始化對象。(與spring框架存在耦合)
2、自定義方法,在銷毀該bean時指定銷毀方法destroy-method。
總結
以上是生活随笔為你收集整理的spring工厂生产对象时对象生命周期的三个阶段的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: spring创建复杂对象的三种方式
- 下一篇: 漫谈promise使用场景