Spring框架——三种创建对象的方式

  • 无参构造创建
<!-- 无参构造创建对象 -->
<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;
	}
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值