您好,登錄后才能下訂單哦!
1、bean的基本定義和bean別名
2、容器中bean的作用域
singleton:?jiǎn)卫J?,在整個(gè)spring IoC容器中,singleton作用域的bean將只生成一個(gè)實(shí)例。
prototype:每次通過容器的getBean()方法獲取prototype作用域的bean時(shí),都將產(chǎn)生一個(gè)新的bean實(shí)例。
request:對(duì)于一次HTTP請(qǐng)求,request作用域的bean將只生成一個(gè)實(shí)例,這意味著,在同一次HTTP請(qǐng)求內(nèi),程序每次請(qǐng)求該bean,得到的總是同一個(gè)實(shí)例。只有在Web應(yīng)用中使用spring時(shí),該作用域才真正的有效。
session:對(duì)于一次HTTP會(huì)話,sesion作用域的bean將只生成一個(gè)實(shí)例,這意味著,在同一次HTTP會(huì)話內(nèi),程序每次請(qǐng)求該bean,得到的總是同一個(gè)實(shí)例。只有在Web應(yīng)用中使用spring時(shí),該作用域才真正的有效。
global session:每個(gè)全局的HTTP Session對(duì)應(yīng)一個(gè)bean實(shí)例。在典型的情況下,僅在使用portlet context的時(shí)候有效。只有在Web應(yīng)用中使用spring時(shí),該作用域才真正的有效。
比較常用的是singleton和prototype。對(duì)于singleton作用域的bean,每次請(qǐng)求該bean都將獲得相同的實(shí)例。容器負(fù)責(zé)跟蹤bean實(shí)例的狀態(tài),負(fù)責(zé)維護(hù)bean實(shí)例的生命周期行為;對(duì)于prototype作用域的bean,程序每次請(qǐng)求該id的bean,spring都會(huì)新建一個(gè)bean實(shí)例,然后返回給程序。這種情況下,spring容器僅僅使用new關(guān)鍵字創(chuàng)建bean實(shí)例,一旦創(chuàng)建成功,容器就不再跟蹤實(shí)例,也不會(huì)維護(hù)bean實(shí)例的狀態(tài)。
如果不指定bean的作用域,spring容器默認(rèn)使用singleton作用域。
spring配置文件通過scope屬性指定bean的作用域,該屬性可以接受singleton、prototype、request、session、globalSession五個(gè)值。
3、request作用域
4、session作用域
以上知識(shí)點(diǎn)希望能夠幫助到大家,感謝大家對(duì)億速云的支持。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。