一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

spring框架學(xué)習(xí)(四)自動(dòng)裝配

 昵稱20874412 2014-12-25
set注入和構(gòu)造注入有時(shí)在做配置時(shí)比較麻煩。所以框架為了提高開發(fā)效率,提供自動(dòng)裝配功能,簡(jiǎn)化配置。Spring框架式默認(rèn)不支持自動(dòng)裝配的,要想使用自動(dòng)裝配需要修改spring配置文件中<bean>標(biāo)簽的autowire屬性

 自動(dòng)裝配屬性有6個(gè)值可選,分別代表不同的含義。

 

1,byName

 從Spring環(huán)境中獲取目標(biāo)對(duì)象時(shí),目標(biāo)對(duì)象中的屬性會(huì)根據(jù)名稱在整個(gè)Spring環(huán)境中查找<bean>標(biāo)簽的id屬性值。如果有相同的,那么獲取這個(gè)對(duì)象,實(shí)現(xiàn)關(guān)聯(lián)。

 整個(gè)Spring環(huán)境:表示所有的spring配置文件中查找,那么id不能有重復(fù)的。

 

2,byType

 從Spring環(huán)境中獲取目標(biāo)對(duì)象時(shí),目標(biāo)對(duì)象中的屬性會(huì)根據(jù)類型在整個(gè)spring環(huán)境中查找<bean>標(biāo)簽的class屬性值。如果有相同的,那么獲取這個(gè)對(duì)象,實(shí)現(xiàn)關(guān)聯(lián)。

 

 缺點(diǎn):如果存在多個(gè)相同類型的bean對(duì)象,會(huì)出錯(cuò)。

       如果屬性為單一類型的數(shù)據(jù),那么查找到多個(gè)關(guān)聯(lián)對(duì)象會(huì)發(fā)生錯(cuò)誤。

       如果屬性為數(shù)組或集合(泛型)類型,那么查找到多個(gè)關(guān)聯(lián)對(duì)象不會(huì)發(fā)生異常。

 

3,constructor

 使用構(gòu)造方法完成對(duì)象注入,其實(shí)也是根據(jù)構(gòu)造方法的參數(shù)類型進(jìn)行對(duì)象查找,相當(dāng)于采用byType的方式。

 

4,autodetect

 自動(dòng)選擇:如果對(duì)象沒有無(wú)參數(shù)的構(gòu)造方法,那么自動(dòng)選擇constructor的自動(dòng)裝配方式進(jìn)行構(gòu)造注入。如果對(duì)象含有無(wú)參數(shù)的構(gòu)造方法,那么自動(dòng)選擇byType的自動(dòng)裝配方式進(jìn)行setter注入。                      

5,no

 不支持自動(dòng)裝配功能

 

6,default

 表示默認(rèn)采用上一級(jí)標(biāo)簽的自動(dòng)裝配的取值。如果存在多個(gè)配置文件的話,那么每一個(gè)配置文件的自動(dòng)裝配方式都是獨(dú)立的。                   

 

 如果配置文件存在多個(gè)的情況下,加載配置文件的方式:

 1) 可以指定總的配置文件去包含子的配置文件,然后只加載總的配置文件即可在總的配置文件applicationContext.xml中使用import標(biāo) 簽進(jìn)行子文件包<importresource="applicationContext-test.xml"/> 

           

 代碼中加載配置文件:    

  1. <span style="font-size:18px;">ApplicationContextacnewClassPathXmlApplicationContext("applicationContext.xml");</span>  

 

 2)使用星號(hào)來(lái)匹配多個(gè)文件進(jìn)行加載,文件名稱要符合規(guī)律。 (推薦使用)


  1. <span style="font-size:18px;">   //配置文件的名稱  
  2. applicationContext.xml  
  3. applicationContext-action.xml  
  4. applicationContext-service.xml  
  5. applicationContext-dao.xml  
  6.    
  7. ApplicationContextac =newClassPathXmlApplicationContext("applicationContext*.xml");  
  8.  </span>  


 3)可以使用數(shù)組作為參數(shù),一次性加載多個(gè)配置文件

  1.    
  2. String[]files={"applicationContext.xml","applicationContext-test.xml"};                 
  3. ApplicationContextac = newClassPathXmlApplicationContext(files);   
  4.        


 

 注意:自動(dòng)裝配功能和手動(dòng)裝配要是同時(shí)使用,那么自動(dòng)裝配就不起作用。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多

    色一情一乱一区二区三区码| 欧美日韩综合免费视频| 久久亚洲成熟女人毛片| 国产又粗又长又大高潮视频| 国产精品不卡一区二区三区四区| 日韩精品一级一区二区| 视频一区中文字幕日韩| 国产欧美一区二区另类精品| 在线观看国产午夜福利| 欧美精品亚洲精品日韩专区| 香蕉网尹人综合在线观看| 亚洲中文字幕视频在线播放| 欧美日本道一区二区三区| 国产亚洲精品一二三区| 国产一区二区三区四区免费| 搡老妇女老熟女一区二区| 成人国产一区二区三区精品麻豆| 久久精品国产亚洲av麻豆| 五月天综合网五月天综合网| av在线免费观看一区二区三区| 欧美极品欧美精品欧美| 国产精品不卡免费视频| 午夜福利视频六七十路熟女| 欧美日韩亚洲巨色人妻| 欧美有码黄片免费在线视频| 婷婷色香五月综合激激情| 亚洲成人久久精品国产| 国产在线不卡中文字幕| 国产日韩综合一区在线观看| 91欧美视频在线观看免费| 一级欧美一级欧美在线播| 99国产高清不卡视频| 国产一区二区熟女精品免费| 久久黄片免费播放大全 | 国产成人av在线免播放观看av| 欧美人妻盗摄日韩偷拍| a久久天堂国产毛片精品| 搡老妇女老熟女一区二区| 日本婷婷色大香蕉视频在线观看| 日韩特级黄片免费在线观看| 久久精品国产亚洲av麻豆|