创建Bean的三种方式

大多数情况下,Spring容器直接通过new关键字调用构造器来创建Bean实例,而class属性指定了Bean实例的实现类。因此,<bean/>元素必须指定Bean实例的class属性,但这并不是实例化Bean的唯一方法。
Spring支持使用如下方式来创建Bean:
[b]1.调用构造器创建Bean[/b]
[b]2.调用静态工厂方法创建Bean[/b]
<!--下面配置驱动Spring调用工厂类BeingFactory的静态方法staticMethod()来创建           
Bean,该配置会驱动Spring以反射方式执行如下代码:
dog=BeanFactory.staticMethod("dog");
-->
<bean id="dog" class="BeingFactory" factory-method="staticMethod">
<!--配置静态工厂方法的参数-->
<constructor-arg value="dog"/>
<!--驱动Spring以"我是狗"为参数来执行dog的setMsg()方法-->
<property name="msg" value="我是狗"/>
</bean>

[color=red]此处省略了接口being,其实现类Dog(包含setMsg()方法),以及静态工厂类 BeingFactory(包含静态方法staticMethod())[/color]
[b]3.调用实例工厂方法创建Bean[/b]
只需将2中的静态方法改为实例方法即可(方法不含static),其他类似。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值