第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

構(gòu)造器注入與setter注入分開(kāi)使用

構(gòu)造器注入與setter注入分開(kāi)使用

正在回答

1 回答

設(shè)值注入有如下優(yōu)點(diǎn):


設(shè)值注入需要該Bean包含這些屬性的setter方法

與傳統(tǒng)的JavaBean的寫(xiě)法更相似,程序開(kāi)發(fā)人員更容易理解、接收。通過(guò)setter方法設(shè)定依賴關(guān)系顯得更加只管。

對(duì)于復(fù)雜的依賴關(guān)系,如果采用構(gòu)造注入,會(huì)導(dǎo)致構(gòu)造器國(guó)語(yǔ)臃腫,難以閱讀。Spring在創(chuàng)建Bean實(shí)例時(shí),需要同時(shí)實(shí)例化器依賴的全部實(shí)例,因而導(dǎo)致性能下降。而使用設(shè)值注入,則能避免這些問(wèn)題

尤其是在某些屬性可選的情況況下,多參數(shù)的構(gòu)造器顯得更加笨重


構(gòu)造注入也不是絕對(duì)不如設(shè)值注入,在某些特定的場(chǎng)景下,構(gòu)造注入比設(shè)值注入更加優(yōu)秀。


構(gòu)造注入有以下優(yōu)勢(shì):

構(gòu)造注入需要該Bean包含帶有這些屬性的構(gòu)造器

構(gòu)造注入可以在構(gòu)造器中決定依賴關(guān)系的注入順序,優(yōu)先依賴的優(yōu)先注入。例如,組件中其他依賴關(guān)系的注入,常常要依賴于DataSrouce的注入。采用構(gòu)造注入,可以在代碼中清晰的決定注入順序。

對(duì)于依賴關(guān)系無(wú)需變化的Bean,構(gòu)造注入更有用處。因?yàn)闆](méi)有Setter方法,所有的依賴關(guān)系全部在構(gòu)造器內(nèi)設(shè)定。因此,無(wú)需擔(dān)心后續(xù)的代碼對(duì)依賴關(guān)系產(chǎn)生破壞。

依賴關(guān)系只能在構(gòu)造器中設(shè)定,則只有組件的創(chuàng)建者才能改變組件的依賴關(guān)系。對(duì)組件的調(diào)用者而言,組件內(nèi)部的依賴關(guān)系完全透明,更符合高內(nèi)聚的原則。

  建議:采用以設(shè)值注入為主,構(gòu)造注入為輔的注入策略。對(duì)于依賴關(guān)系無(wú)需變化的注入,盡量采用構(gòu)造注入;而其他的依賴關(guān)系的注入,則考慮采用設(shè)值注入。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

構(gòu)造器注入與setter注入分開(kāi)使用

我要回答 關(guān)注問(wèn)題
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)