.singleton
在每個(gè)Spring IoC容器中一個(gè)bean定義只有一個(gè)對(duì)象實(shí)例。默認(rèn)情況下會(huì)在容器啟動(dòng)時(shí)初始化bean,但我們可以指定Bean節(jié)點(diǎn)的lazy-init=“true”來延遲初始化bean,這時(shí)候,只有第一次獲取bean會(huì)才初始化bean。如:
<bean id="xxx" class="cn.itcast.OrderServiceBean" lazy-init="true"/>
如果想對(duì)所有bean都應(yīng)用延遲初始化,可以在根節(jié)點(diǎn)beans設(shè)置default-lazy-init=“true“,如下:
<beans default-lazy-init="true“ ...>
.prototype
每次從容器獲取bean都是新的對(duì)象。
.request
.session
.global session
ClassPathXmlApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
PersionSevice ps=(PersionSevice)ctx.getBean("persionServiceBean");
PersionSevice ps2=(PersionSevice)ctx.getBean("persionServiceBean");
System.out.println(ps==ps2);
輸出:true
可見spring容器默認(rèn)的bean的產(chǎn)生方式是單例
改
<bean id="persionServiceBean" class="cn.com.xinli.service.impl.PersionServiceBean" scope="prototype"></bean>
這時(shí)候輸出:false ,顯然ps與ps2就不一樣。
只有注冊用戶登錄后才能發(fā)表評(píng)論。 | ||
![]() |
||
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
|
||
相關(guān)文章:
|
||