Bean的生命週期問題

2021-09-13 22:27:27 字數 2639 閱讀 1968

測試bean的生命週期

//bean的生命週期

@test

public

void

test7()

name

="beanlifecycle"

class

="bean.beanlifecycle"

init-method

="myinit"

destroy-method

="mydestroy"

>

name

="name"

value

="second"

>

property

>

bean

>

class

="bean.mybeanpostprocessor"

>

bean

>

beanlifecycle implements beannameaware
/**

* 1.instantiate bean物件例項化

2.populate properties 封裝屬性

3.如果bean實現beannameaware執行setbeanname

5.如果存在類實現beanpostprocessor(後處理bean),執行postprocessbeforeinitialization

6.如果bean實現initializingbean執行afterpropertiesset

7.呼叫自定義的init-method方法

8.如果存在類實現beanpostprocessor(處理bean),執行postprocessafterinitialization

9.執行業務處理

10.如果bean實現disposablebean執行destroy

11.呼叫自定義的destroy-method

* @author 45度炸

* */

public

class

beanlifecycle

implements

beannameaware

private string name;

public

beanlifecycle()

public string getname()

public

void

setname

(string name)

@override

public

void

setbeanname

(string name)

@override

public

void

throws bean***ception

@override

public

void

afterpropertiesset()

throws exception

public

void

myinit()

public

void

add(

)@override

public

void

destroy()

throws exception

public

void

mydestroy()

}

mybeanpostprocessor implements beanpostprocessor
public

class

mybeanpostprocessor

implements

beanpostprocessor

@override

public object postprocessbeforeinitialization

(object bean, string beanname)

throws bean***ception }--

----

----

----

----

----

----

----

-使用動態**增強add方法--

----

----

----

----

----

----

----

----

----

----

----

----

-@override

public object postprocessbeforeinitialization

(object bean, string beanname)

throws bean***ception

else}}

);return bean;

// system.out.println("第五步:beanpostprocessor的before方法");

// system.out.println("處理的bean是:"+bean+",它的名稱是"+beanname);

// return bean;

}

Bean生命週期

初始化 1 實現org.springframework.beans.factory.initializingbean介面,覆蓋afterpropertiesset方法。public class exampleinitializingbean implements initializingbean 2...

bean生命週期

spring中的ioc容器可以管理bean生命週期,預設情況下,ioc容器初始化時便會把bean例項化。通過以下例項過程來體會bean的生命週期 1.student類 package text public class student public student public void setna...

Bean生命週期?

前言 生命週期 從物件的建立,到物件銷毀的過程。一 bean的生命週期 7步操作 1.建立。通過無參構造方法,建立bean的例項 2.設定物件屬性,和對其他bean的引用。3.檢查有沒有bean的後置處理器,有就把bean的例項傳給postprocessbeforeinitialization 方法...