Spring建立Bean的三種方式

2021-08-07 21:43:04 字數 2138 閱讀 7902

一、 使用構造器建立bean的例項

在依賴注入已經敘述多種注入例項

二、使用靜態工廠方法建立bean

例項如下:

**靜態工廠方法所產生的產品是該介面的例項**

package com.home.bean;

/** * 定義beging介面,靜態工廠方法所產生的產品是該介面的例項

*/public

inte***ce being

**下面為兩個實現類,靜態工廠將會產生這兩個實現類的例項**

package com.home.bean;

public

class dog implements being

public

void

testbeing()

}package com.home.bean;

public

class cat implements being

public

void

testbeing()

}下面是工廠類,該靜態方法getbeing()用於返回乙個being的例項

package com.home.bean;

public

class beingfactory else

}}配置檔案:

"dog" class="com.home.bean.beingfactory" factory-method="getbeing">

value="dog" />

"msg"

value="我是狗"/>

"cat" class="com.home.bean.beingfactory" factory-method="getbeing">

value="cat" />

"msg"

value="我是貓"/>

測試類如下:

package spring;

import com.home.bean.being;

public

class springtest2

}

三、呼叫例項工廠方法建立bean

區別:

呼叫靜態工廠類只需要使用工廠類即可,而呼叫例項工廠方法則需要工廠例項。配置靜態工廠方法使用class指定靜態工廠類,而配置例項工廠方法則使用factory-bean指定工廠例項。

例項如下:

package com.home.bean;

//例項工廠方法所產生的物件將實現此介面

public

inte***ce people

兩個實現類:

package com.home.bean;

public

class chinese implements people

public string saygoodbye(string name)

}package com.home.bean;

public

class american implements people

public string saygoodbye(string name)

}例項工廠類如下:

負責生產people物件的例項工廠

package com.home.bean;

public

class personfactory else

}}配置檔案如下:

"personfactory" class="com.home.bean.personfactory">

"chinese" factory-bean="personfactory" factory-method="getperson">

value="chin" />

"american" factory-bean="personfactory" factory-method="getperson">

value="ame" />

測試類如下:

package spring;

import com.home.bean.people;

public

class springtest3

}

Spring 建立bean的三種方式

第一種 使用預設建構函式建立bean 在spring的配置檔案中使用bean標籤,配以id和class屬性之後,且沒有其他屬性和標籤時。採用的就是預設建構函式建立bean物件,此時如果類中沒有預設建構函式,則物件則無法建立 bean.xml檔案 beanid class beanclass bean...

spring建立bean的三種方式

在spring的配置檔案中使用bean標籤,配以id和class屬性之後,且沒有其他屬性和標籤時。採用的就是預設建構函式建立bean物件,此時如果類中沒有預設建構函式,則物件無法建立。instancefactory class com.itheima.factory.instancefactory ...

Spring中建立Bean的三種方式

1 使用預設建構函式建立 在spring的配置檔案中使用bean標籤,配以id和class屬性之後,且沒有其他屬性和標籤時。採用的就是預設建構函式建立bean物件,此時類中沒有預設建構函式,則物件無法建立。accountservice class cn.itcast.service.impl.acc...