第一步:先提供两个javaBean对象
public class UserDao2 {
public void test(){
System.out.println("UserDao2.test");
}
}
public class UserService2 {
private UserDao2 userDao2;
public UserService2(UserDao2 userDao2) {
this.userDao2 = userDao2;
}
public void test(){
System.out.println("UserService2.test");
userDao2.test();
}
}
第二步:准备配置文件
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans
https://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="userService2" class="com.zks.service.UserService2">
<constructor-arg name="userDao2" ref="userDao2"/>
</bean>
<!-- 先配置UserDao这个bean对象-->
<bean id="userDao2" class="com.zks.dao.UserDao2"></bean>
</beans>
注意这里在第一个bean标签里面用了
这里的name和之前的一样,对应java代码种引用的对象的名字,如图:
ref就对应下一个bean标签里面的id。
通过构造器注入多个javaBean对象或者注入普通的变量的情况也差不多,xml如图所示:
最后,构造器注入还可能引起循环注入的问题,此时,要改用set方法注入