新聞中心
bean標(biāo)簽
創(chuàng)建bean的三種方式
第一種方式:試用默認(rèn)構(gòu)造函數(shù)創(chuàng)建
在spring的配置文件中使用bean標(biāo)簽,配以id和class屬性之后,且沒有其他屬性和標(biāo)簽時,采用的就是默認(rèn)構(gòu)造函數(shù)創(chuàng)建bean對象,此時如果類中沒有默認(rèn)構(gòu)造函數(shù),則對象無法創(chuàng)建
第二種方式:使用普通工廠中的方法創(chuàng)建對象(使用某個類中的方法創(chuàng)建對象,并存入spring容器)
第三種方式:使用工廠中的靜態(tài)方法創(chuàng)建對象(使用某個類中的靜態(tài)方法創(chuàng)建對象,并存入spring容器)
bean對象的作用范圍
bean標(biāo)簽的scope屬性:
作用:用于指定bean的作用范圍
取值:常用的就是單例的和多例的
singleton:單例的(默認(rèn)值)
prototype:多例的
request:作用于web應(yīng)用的請求范圍
session:作用于web應(yīng)用的會話范圍
global-session:作用于集群環(huán)境的會話范圍(全局會話范圍),當(dāng)不是集群環(huán)境時,它就是session
單例和多例的比較
global session
bean對象的生命周期
單例對象
出生:當(dāng)容器創(chuàng)建是對象出生
活著:只要容器還在,對象一直活著
死亡:容器銷毀,對象消亡
總結(jié):和容器相同
多例對象
出生:當(dāng)我們使用對象時spring框架為我們創(chuàng)建
活著:對象只要是在使用過程中就一直活著
死亡:當(dāng)對象長時間不用,且沒有別的對象引用時,由java的垃圾回收器回收
demo無錫人流醫(yī)院 http://xmobile.wxbhnk120.com/
Client
public static void main(String[] args) {
//1.獲取核心容器對象
ApplicationContext ac = new ClassPathXmlApplicationContext("bean.xml");
// ApplicationContext ac = new FileSystemXmlApplicationContext("bean.xml");
// 2.根據(jù)id獲取bean對象
IAccountService as = (IAccountService) ac.getBean("accountService");
as.saveAccount();
}
AccountServiceImpl
public class AccountServiceImpl implements IAccountService {
public AccountServiceImpl() {
System.out.println("對象創(chuàng)建了。。。。。");
}
public void saveAccount() {
System.out.println("service中的saveAccount方法執(zhí)行了。。。。。");
}
public void init() {
System.out.println("對象初始化了。。。。。");
}
public void destroy() {
System.out.println("對象銷毀了。。。。。");
}
}
bean.xml
scope="singleton" init-method="init" destroy-method="destroy">
創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國云服務(wù)器,動態(tài)BGP最優(yōu)骨干路由自動選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動現(xiàn)已開啟,新人活動云服務(wù)器買多久送多久。
本文題目:Spring:基于XML的IOC細(xì)節(jié)-創(chuàng)新互聯(lián)
瀏覽地址:http://fisionsoft.com.cn/article/jpceo.html