1、構造函數注入的是
?? 設計到的標簽:constructor-arg
?? 屬性:
?? ?index:指定參數在構造函數參數列表的索引位置
?? ?type:指定參數在構造函數中的數據類型
?? ?name:指定參數在構造函數中的名稱
?? ============上面三個都是找誰 ,給誰賦值,下面兩個指的是賦什么值==============
?? ?value:它能賦的值是基本類型和String類型
?? ?ref:它能賦的值是其他bean類型,也就是說,必須的是在配置文件配置過的bean
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<constructor-arg name="username" value="張三"></constructor-arg>
?? ?<constructor-arg name="age" value="12"></constructor-arg>
</bean>
2、set方法注入
?? 涉及到的標簽:property
?? 屬性:
?? ?name:找到類中的set方法后面的部分,并且首字母小寫。
?? ?ref:給屬性賦值是其他bean類型的,也就是說,必須的是在配置文件配置過的bean
?? ?value:給屬性賦值是基本類型和String類型
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<property name="username" value="張三"></property>
?? ?<property name="age" value="12"></property>
?? ?<property name="birthday" ref="now"></property>
</bean>
<bean id="now" class="java.util.Date"></bean>
3、使用P名稱空間注入數據(本質還是調用set方法)
?? 配置文件代碼:
?? xmlns:p="http://www.springframework.org/schema/p"
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl"
?? ?p:name="張三" p:age="21" p:birthday-ref="now">
</bean>
<bean id="now" class="java.util.Date"></bean>
4、注入集合屬性
?? List結構的:array、list、set
?? map結構:map、entry、props、prop
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<!-- 注入數組數據 -->
?? ?<property name="array">
?? ??? ?<array>
?? ??? ??? ?<value>array1</value>
?? ??? ??? ?<value>array2</value>
?? ??? ??? ?<value>array3</value>
?? ??? ?</array>
?? ?</property>
?? ?<!-- 注入list集合數據 -->
?? ?<property name="list">
?? ??? ?<list>
?? ??? ??? ?<value>list1</value>
?? ??? ??? ?<value>list2</value>
?? ??? ??? ?<value>list3</value>
?? ??? ?</list>
?? ?</property>
?? ?<!-- 注入set集合數據 -->
?? ?<property name="set">
?? ??? ?<set>
?? ??? ??? ?<value>set1</value>
?? ??? ??? ?<value>set2</value>
?? ??? ??? ?<value>set3</value>
?? ??? ?</set>
?? ?</property>
?? ?<!-- 注入map數據 -->
?? ?<property name="map">
?? ??? ?<map>
?? ??? ??? ?<entry key="mp1" value="map1"></entry>
?? ??? ??? ?<entry key="mp2">
?? ??? ??? ??? ?<value>map2</value>
?? ??? ??? ?</entry>
?? ??? ?</map>
?? ?</property>
</bean>
?? 設計到的標簽:constructor-arg
?? 屬性:
?? ?index:指定參數在構造函數參數列表的索引位置
?? ?type:指定參數在構造函數中的數據類型
?? ?name:指定參數在構造函數中的名稱
?? ============上面三個都是找誰 ,給誰賦值,下面兩個指的是賦什么值==============
?? ?value:它能賦的值是基本類型和String類型
?? ?ref:它能賦的值是其他bean類型,也就是說,必須的是在配置文件配置過的bean
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<constructor-arg name="username" value="張三"></constructor-arg>
?? ?<constructor-arg name="age" value="12"></constructor-arg>
</bean>
2、set方法注入
?? 涉及到的標簽:property
?? 屬性:
?? ?name:找到類中的set方法后面的部分,并且首字母小寫。
?? ?ref:給屬性賦值是其他bean類型的,也就是說,必須的是在配置文件配置過的bean
?? ?value:給屬性賦值是基本類型和String類型
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<property name="username" value="張三"></property>
?? ?<property name="age" value="12"></property>
?? ?<property name="birthday" ref="now"></property>
</bean>
<bean id="now" class="java.util.Date"></bean>
3、使用P名稱空間注入數據(本質還是調用set方法)
?? 配置文件代碼:
?? xmlns:p="http://www.springframework.org/schema/p"
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl"
?? ?p:name="張三" p:age="21" p:birthday-ref="now">
</bean>
<bean id="now" class="java.util.Date"></bean>
4、注入集合屬性
?? List結構的:array、list、set
?? map結構:map、entry、props、prop
舉例:
<bean id="accountService" class="cn.wzq.service.impl.AccountServiceImpl">
?? ?<!-- 注入數組數據 -->
?? ?<property name="array">
?? ??? ?<array>
?? ??? ??? ?<value>array1</value>
?? ??? ??? ?<value>array2</value>
?? ??? ??? ?<value>array3</value>
?? ??? ?</array>
?? ?</property>
?? ?<!-- 注入list集合數據 -->
?? ?<property name="list">
?? ??? ?<list>
?? ??? ??? ?<value>list1</value>
?? ??? ??? ?<value>list2</value>
?? ??? ??? ?<value>list3</value>
?? ??? ?</list>
?? ?</property>
?? ?<!-- 注入set集合數據 -->
?? ?<property name="set">
?? ??? ?<set>
?? ??? ??? ?<value>set1</value>
?? ??? ??? ?<value>set2</value>
?? ??? ??? ?<value>set3</value>
?? ??? ?</set>
?? ?</property>
?? ?<!-- 注入map數據 -->
?? ?<property name="map">
?? ??? ?<map>
?? ??? ??? ?<entry key="mp1" value="map1"></entry>
?? ??? ??? ?<entry key="mp2">
?? ??? ??? ??? ?<value>map2</value>
?? ??? ??? ?</entry>
?? ??? ?</map>
?? ?</property>
</bean>