Spring学习-读书笔记(1)-Bean一般方式的装配与注入总结

本文为读书笔记。看的书是《Spring实战》【美】Craig Walls 著,仅限交流。

总结了Bean一般方式的装配与注入,这里只展示配置文件中的内容。

Spring版本4.2.4

 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     xsi:schemaLocation="http://www.springframework.org/schema/beans 
 5         http://www.springframework.org/schema/beans/spring-beans.xsd">
 6     <!-- 装配 -->  
 7     <bean id="guChengDeShi" class="com.springidol.GuChengDeShi"/>    
 8     
    <!-- 构造器注入--> 9 <bean id="duke" class="com.springidol.Juggler"> 10 <constructor-arg value="15"/> 11 </bean> 12 13 <!-- 构造器注入 + 对象引入--> 14 <bean id="poeticDuke" class="com.springidol.PoeticJuggler"> 15 <constructor-arg value="15"/> 16 <constructor-arg ref="guChengDeShi"/> 17 </bean> 18 19 <!-- 调用静态方法注入--> 20 <bean id="theStage" class="com.springidol.Stage" factory-method="getInstance"/> 21 22 <bean id="jiTa" class="com.springidol.JiTa"/> 23 <!-- 使用存取器注入,即setXXX()和getXXX() --> 24 <bean id="kenny" class="com.springidol.Instrumentalist"> 25 <property name="song" value="David Bowie"/> 26 <property name="instrument" ref="jiTa"/> 27 <property name="age"><null/></property> <!-- 装配空值 --> 28 </bean> 29 30 <!-- List集合的注入 示例,不能运行--> 31 <bean id="hank" class="com.springidol.OneManBand"> 32 <property name="instruments"> <!-- 想要注入的字段的名字 --> 33 <list> <!-- 也可以使用set标签,不过注入的元素(对象)不可以重复,且只能有一个Null --> 34 <ref bean="guitar"/> 35 <ref bean="harmonica"/> 36 <ref bean="harmonica"/> 37 </list> 38 </property> 39 </bean> 40 41 <!-- Map集合注入示例,不能运行 --> 42 <bean id="hank2" class="com.springidol.OneManBand"> 43 <property name="instruments"> 44 <map> 45 <entry key="GUITAR" value-ref="guitar"/> 46 <entry key="HARMONICA" value-ref="harmonica"/> 47 </map> 48 </property> 49 </bean> 50 51 <!-- 当键值对都为String时,可以考虑使用java.util.Properties集合来装配Map集合 --> 52 <bean id="hank3" class="com.springidol.OneManBand"> 53 <property name="instruments"> 54 <props> 55 <prop key="GUITAR">HA HA HA</prop> 56 <prop key="HARMONICA">LA LA LA</prop> 57 </props> 58 </property> 59 </bean> 60 </beans>

新手写博。:)

posted @ 2016-03-16 22:59  自安  阅读(107)  评论(0)    收藏  举报