1. 程式人生 > >Spring中Bean的種類及作用域

Spring中Bean的種類及作用域

一、Bean的種類

1、普通bean:<bean  id=""  class="A"> ,spring直接建立A例項,並返回。

2、FactoryBean:是一個特殊的bean,具有工廠生成物件的能力,只能生成特定的物件。bean必須使用 FactoryBean介面,此介面提供方法 getObject() 用於獲得特定bean。

<bean   id="" class="FB"> 先建立FB例項,使用呼叫getObject()方法,並返回方法的返回值

FB fb = new FB();

return fb.getObject();

BeanFactory 和 FactoryBean 對比?

BeanFactory:工廠,用於生成任意bean。

FactoryBean:特殊bean,用於生成另一個特定的bean。例如:ProxyFactoryBean ,此工廠bean用於生產代理。

<bean  id=""   class="....ProxyFactoryBean"> 獲得代理物件例項,AOP使用。

二、作用域

作用域:用於確定Spring建立Bean的例項個數。


取值:

singleton 單例,是預設值。

prototype 多例,每執行一次getBean將獲得一個例項。例如:struts整合spring,配置action多例。

配置資訊:

<bean   id=""   class=""    scope="">

例如:

<bean id="userServiceId"   class="com.zju.scope.UserServiceImpl"    scope="prototype"></bean>