Spring3 bean的生命週期

2021-04-18 00:50:07 字數 1068 閱讀 2093

一、spring

裝配bean的過程

1. 例項化;    //只會例項化一次,因為是bean預設單態,多型的bean不由beanfactory管理。

2. 設定屬性值;

3. 如果實現了beannameaware介面,呼叫setbeanname設定bean的id或者name;

4. 如果實現beanfactory

aware介面,呼叫setbeanfactory

設定beanfactory

容器關閉過程

1. 呼叫disposablebean的destroy();

2. 呼叫定製的destroy-method方法;

org.springframework.beans.factory.config.beanpostprocessor介面:

//實現了此介面的類,有任何bean例項化時都會監聽到。下面的引數,分別是指臨聽到的bean的引用和名字。

package org.springframework.beans.factory.config;

public inte***ce beanpostprocessor

在bean初始化的過程中最多有三次修改bean的機會,實現initializingbean或者定製init-method是一次機會,區別是乙個與spring

beanfactorpostprocessor

對於程式來說,有一些選項在設定好後通常就不會去變更,而有一些選項可能得隨時調整,這時候如果能提供乙個更簡潔的設定檔,提供一些常用選項在其中隨時更改,這樣的程式在使用時會更有彈性。

我們可以實作org.springframework.beans.factory.config.beanfactorypostprocessor介面來提供這個功能:

來看乙個bean定義檔的實際例子:

<?xml version="1.0" encoding="utf-8"?>   

hello.properties$

event

Spring(3 ) Bean 的建立方式

本系列部落格彙總在這裡 spring 彙總 原始碼工程檔案為 spring3.2 03 使用構造器方式建立 bean,要求 bean 必須要有預設的構造器,這是工作中最常用的方式。提供靜態工廠 public class factorybean 配置 user class com.wyx.spring...

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

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

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

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