Spring创建对象的三种方式

1.通过构造方法创建

  1. 无参构造创建:(默认情况. )

  2. 有参构造创建:需要明确配置
    1.2.1 需要在类中提供有参构造方法
    1.2.2 在 applicationContext.xml 中设置调用哪个构造方法创建 对象 1.2.2.1 如果设定的条件匹配多个构造方法执行最后的构造方法
    index : 参数的索引,从 0 开始
    name: 参数名
    type:类型(区分开关键字和封装类 int 和 Integer)

<bean id="peo" class="com.bjsxt.pojo.People">
	<!-- ref 引用另一个 bean value 基本数据类型或 String 等 --> 
	<constructor-arg index="0" name="id" type="int" value="123"</constructor-arg> 
	<constructor-arg index="1" name="name" type="java.lang.String" value="张三 "></constructor-arg>
</bean>

2.实例工厂

2.2 实例工厂:需要先创建工厂,才能生产对象
2.3 实现步骤:
2.3.1 必须要有一个实例工厂

 public class PeopleFactory { 
 	public People newInstance(){ 
 		return new People(1,"测试");
	} 
}

2.3.2 在 applicationContext.xml 中配置工厂对象和需要创建的 对象

<bean id="factory" class="com.bjsxt.pojo.PeopleFactory"></bean>
<bean id="peo1" factory-bean="factory" factory-method="newInstance"></bean>

3.静态工厂

3.1 不需要创建工厂,快速创建对象.
3.2 实现步骤
3.2.1 编写一个静态工厂(在方法上添加 static)

 public class PeopleFactory { 
	 public static People newInstance(){
	 	return new People(1,"测试"); 
	 } 
  } 

3.2.2 在 applicationContext.xml 中

  <bean id="peo2" class="com.bjsxt.pojo.PeopleFactory" factory-method="newInstance"></bean>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值