注入步骤: 在目标bean类文件中将属性生成setter方法 在spring配置文件中配置目标bean的属性依赖,通过标签 标签property name属性表示bean的属性名 使用value配置属性名,(当值为引用类型需要使用ref属性
构造器注入(了解) 通过构造方法注入Bean的属性值或依赖的对象Bean实例在实例化后可以使用 构造器在<constructor-arg>元素里声明属性 (1)按索引匹配入参 applicationContext.xml <bean id="userDao" class="com.gh.spring.ioc.di.UserDao"></bean> <bean id="userService" class="com.gh.spring.ioc.di.UserService"> <constructor-arg index="0" ref="userDao"></constructor-arg> <constructor-arg index="1" value="hui"></constructor-arg> <constructor-arg index="2" value="19"></constructor-arg> </bean> UserService.java public UserService(UserDao udao, String userName, int age) { super(); this.udao = udao; this.userName = userName; this.age = age; }(2)按类型匹配入参
applicationContext.xml <bean id="userService" class="com.gh.spring.ioc.di.UserService"> <constructor-arg type="UserDao" ref="userDao"></constructor-arg> <constructor-arg type="String" value="huihui"></constructor-arg> <constructor-arg type="int"><value>19</value></constructor-arg> </bean>applicationContext.xml
<bean id="collection" class="com.gh.spring.ioc.di.CollectionDI"> //list标签 <property name="stuList"> <list> <value>张三</value> <value>李四</value> <value>慧子</value> </list> </property> <property name="majorSet"> <set> <value>java</value> <value>数据结构</value> <value>java</value> </set> </property> <property name="scoreMap"> <map> <entry key="张三" value="44"/> <entry key="李四" value="77"/> <entry key="王二" value="90"/> </map> </property> <property name="prop"> <props> <prop key="java">78</prop> <prop key="java">89</prop> <prop key="c">99</prop> </props> </property> </bean>简化配置信息
<bean id="userDao" class="com.gh.spring.ioc.di.UserDao" P:dbName="me"> </bean> <bean id="collection" class="com.gh.spring.ioc.di.CollectionDI" P:stuList-ref="stuList"> </bean>专项配置文件
<context:property-placeholder location="config/db.properitise"/> <bean id="connection" class="com.gh.spring.ioc.di.DbCollection" p:dbUrl="${mysql-url}> </bean>