Spring(4)IOC的创建方式
4.IOC创建对象的方式
1.使用无参构造创建对象,默认!
当我们使用无参构造的时候,它是默认创建的!并且在配置文件加载的时候,容器中管理的对象就已经开始初始化了!
这里我们定义一个User类,并且创建它的无参构造
public class User {
private String name;
public User() {
System.out.println("User的无参构造");
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public void userShow(){
System.out.println("name:"+name);
}
}
之后创建bean的配置文件
<?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
http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
<bean id="user" class="com.luo.pojo.User"></bean>
</beans>
接下来我们进行测试

得出结论:在配置文件加载的时候,容器中管理的对象就已经开始初始化了!
2.假设我们要使用有参构造创建对象。
当我们创建一个有参构造的时候,并且没有显示定义无参构造,就会在beans.xml文件中看到错误

假设我们要使用有参构造创建对象。spring中有三个方法,这里我选取两个,因为一个不推荐使用
第一种:通过下标赋值
<bean id="user" class="com.luo.pojo.User">
<constructor-arg index="0" value="十三"></constructor-arg>
</bean>

第二种:参数名
<bean id="user" class="com.luo.pojo.User">
<constructor-arg name="name" value="十三"></constructor-arg>
</bean>


浙公网安备 33010602011771号