Spring中bean的生命週期

2021-10-02 03:52:23 字數 1255 閱讀 9068

看官,直接先上個例子。

其中定義了init、destroy、afterpropertiesset函式。

public

class

helloworld

implements

initializingbean

public

void

setmessage

(string message)

public

void

init()

public

void

destroy()

public

void

afterpropertiesset()

throws exception

}

我在xml配置檔案裡面設定了init和destroy函式。

"helloworld"

class

="com.learn.helloworld.helloworld"

init-method

="init"

destroy-method

="destroy"

>

註冊每乙個bean生命週期的鉤子。

class

="com.learn.helloworld.inithelloworld"

/>

相應的處理函式定義在了這裡。

public

class

inithelloworld

implements

beanpostprocessor

public object postprocessafterinitialization

(object bean, string beanname)

throws bean***ception

}

最後,執行的結果是這樣的。

可以看到,建立的時候,函式的執行順序是這樣的

postprocessbeforeinitialization(初始化之前) -> afterpropertiesset(屬性設定好) -> init(初始化函式) -> postprocessafterinitialization(初始化之後)

其次,beanpostprocessor類對每個bean都鉤。所以,鉤完bean再鉤下乙個。

Spring框架中的Bean物件的生命週期

從書上可知,spring框架中bean物件有它的生命週期,還包括bean的銷毀。在beanfacotory中獲取的例項是singleton,beanfactory預設每乙個引用來維護乙個例項,對單執行程式來講,並不會有什麼問題,但是多程式來說,就需要你注意執行的安全,可以設定每次在beanfacot...

Spring中Bean的作用域 狀態 生命週期

spring 3中為bean定義了5中作用域,分別為singleton 單例 prototype 原型 request session和global session,5種作用域說明如下 singleton 單例模式,spring ioc容器中只會存在乙個共享的bean例項,無論有多少個bean引用它...

Spring學習筆記 關於bean的生命週期

springioc容器可以管理bean的生命週期,spring允許在bean宣告週期的特定點執行定製的任務。springioc容器對bean的生命週期進行管理的過程 在bean的宣告裡設定init method和destory method屬性,為bean指定初始化和銷毀的方法。bean後置處理器允...