建站哪家好要認(rèn)定興田德潤(rùn)seo優(yōu)化排名推廣
有哪些生命周期回調(diào)方法?有哪幾種實(shí)現(xiàn)方式?
有兩個(gè)重要的bean 生命周期方法,
- 第一個(gè)是init , 它是在容器加載bean的時(shí)候被調(diào)用。
- 第二個(gè)方法是 destroy 它是在容器卸載類的時(shí)候被調(diào)用。
bean 標(biāo)簽有兩個(gè)重要的屬性(init-method和destroy-method)。用它們你可以自己定制初始化和注銷方法。它們也
有相應(yīng)的注解(@PostConstruct和@PreDestroy)。
額外擴(kuò)展
Spring生命周期全過(guò)程大致分為五個(gè)階段:創(chuàng)建前準(zhǔn)備階段、創(chuàng)建實(shí)例階段、依賴注入階段、容器緩存階段和銷毀實(shí)例階段。
1、創(chuàng)建前準(zhǔn)備階段
這個(gè)階段主要是在開(kāi)始Bean加載之前,從Spring上下文和相關(guān)配置中解析并查找Bean有關(guān)的配置內(nèi)容,
比如init-method
-容器在初始化bean時(shí)調(diào)用的方法、destory-method
,容器在銷毀Bean時(shí)調(diào)用的方法。
以及,BeanFactoryPostProcessor這類的bean加載過(guò)程中的前置和后置處理。
這些類或者配置其實(shí)是Spring提供給開(kāi)發(fā)者,用來(lái)實(shí)現(xiàn)Bean加載過(guò)程中的擴(kuò)展機(jī)制,在很多和Spring集成的中間件經(jīng)常使用,比如Dubbo。
2、創(chuàng)建實(shí)例階段
這個(gè)階段主要是通過(guò)反射來(lái)創(chuàng)建Bean的實(shí)例對(duì)象,并且掃描和解析Bean聲明的一些屬性。
3、依賴注入階段
在這個(gè)階段,會(huì)檢測(cè)被實(shí)例化的Bean是否存在其他依賴,如果存在其他依賴