在Spring中,Bean的生命周期包括以下幾個階段:
實例化:當Spring容器接收到請求時,根據配置文件或注解等方式,在內存中創建Bean的實例。
屬性賦值:Spring容器通過依賴注入的方式,將Bean的屬性值注入到相應的屬性中。
初始化前回調方法:在Bean的實例化完成后,Spring容器會調用Bean的初始化前回調方法,可以通過實現InitializingBean接口的afterPropertiesSet()方法或使用@PostConstruct注解來定義。
自定義初始化方法:如果Bean中定義了自定義的初始化方法,Spring容器會調用該方法。
初始化后回調方法:在Bean的初始化方法執行完畢后,Spring容器會調用Bean的初始化后回調方法,可以通過實現InitializingBean接口的afterPropertiesSet()方法或使用@PostConstruct注解來定義。
使用Bean:此時Bean已經完成了初始化,可以被其他Bean或組件使用。
銷毀前回調方法:當Spring容器關閉或銷毀Bean時,會調用Bean的銷毀前回調方法,可以通過實現DisposableBean接口的destroy()方法或使用@PreDestroy注解來定義。
自定義銷毀方法:如果Bean中定義了自定義的銷毀方法,Spring容器會調用該方法。
需要注意的是,Bean的生命周期由Spring容器管理,我們可以通過配置或注解來控制Bean的初始化和銷毀行為。