- 无参构造创建
<!-- 无参构造创建对象 -->
<bean id="stu" class="com.zxw.pojo.Student"></bean>
- 有参构造创建
<!-- 有参构造创建对象
constructor-arg:有参构造中有几个参数就写几个constructor-arg
name:参数名
index:参数位置(从0开始)
type:参数类型
value:参数值
-->
<bean id="stu" class="com.zxw.pojo.Student">
<constructor-arg name="age" index="1" type="int" value="18"></constructor-arg>
<constructor-arg name="name" index="0" type="java.lang.String" value="哈哈">
</constructor-arg>
</bean>
- 使用工厂模式创建
<!-- 使用工厂模式创建对象 -->
<!-- Factory factory=new Factory(); -->
<bean id="factory" class="com.zxw.factory.Factory"></bean>
<!-- People student = factory.getInstance("stu"); -->
<bean id="be" factory-bean="factory" factory-method="getInstance">
<constructor-arg name="param" value="stu"></constructor-arg>
</bean>
<!-- 使用工厂模式创建对象(静态) -->
<!-- People people = Factory.getInstance("tea"); -->
<bean id="factory" class="com.zxw.factory.Factory" factory-method="getInstance">
<constructor-arg name="param" value="tea"></constructor-arg>
</bean>
背景:接口People,Teacher和Student类实现该接口
工厂factory类
public class Factory {
/*public People getInstance(String param){
if("stu".equals(param)){
return new Student();
}else if("tea".equals(param)){
return new Teacher();
}
return null;
}*/
public static People getInstance(String param){
if("stu".equals(param)){
return new Student();
}else if("tea".equals(param)){
return new Teacher();
}
return null;
}
}