1. 程式人生 > 實用技巧 >Spring基於配置檔案裝配Bean(1) ------設定autowire自動裝配

Spring基於配置檔案裝配Bean(1) ------設定autowire自動裝配

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4        xmlns:p="http://www.springframework.org/schema/p"
 5        xsi:schemaLocation="http://www.springframework.org/schema/beans
 6        http://
www.springframework.org/schema/beans/spring-beans.xsd"> 7 8 <bean id="carBean" class="com.spring.cn.config.autowire.CarBean" 9 p:brand="寶馬" p:price="350000"/> 10 11 <bean id="carBean2" class="com.spring.cn.config.autowire.CarBean" 12 p:brand="寶馬" p:price="350000"/> 13
14 <bean id="addressBean" class="com.spring.cn.config.autowire.AddressBean" 15 p:city="成都" p:street="天府大道"/> 16 17 <!--手動裝配--> 18 <!--<config id="personBean" class="com.spring.cn.configig.autowire.PersonBean"--> 19 <!--p:name="liangd" p:carBean-ref="carBean" p:addressBean-ref="addressBean"/>--> 20
<!-- 21 1、使用autewire屬性指定自動裝配方式 22 2、byName 通過當前bean的類名和當前bean的setter構造風格(id名)進行自動裝配 23 若有匹配的,則進行自動裝配,若沒有匹配的,則不裝配(例如id名字與類名不一致) 24 3、通過byType自動裝配bean,不允許IOC容器中有兩個相同型別的bean,否則拋異常 25 --> 26 <!--自動裝配--> 27 <bean id="personBean" class="com.spring.cn.config.autowire.PersonBean" 28 p:name="liangd" autowire="byName"/> 29 30 <!--<config id="personBean" class="com.spring.cn.configig.autowire.PersonBean"--> 31 <!--p:name="liangd" autowire="byType"/>--> 32 <!-- 33 自動裝配的缺點: 34 1、在bean的配置檔案裡面使用autowire屬性將會自動裝配bean的所有屬性,然而對於只自動裝配個別欄位,顯得不夠靈活 35 2、autowire屬性要麼根據型別裝配,要麼根據名字裝配,二者不能同時使用 36 3、一般情況下,實際的專案中很少使用自動裝配功能。但在使用一些框架的時候用autowire更方便 37 --> 38 </beans>