public class CarFactoryBean implements FactoryBean<Car>{ //实现FactoryBean接口
private String brand;
public void setBrand(String brand){
this.brand = brand;
}
//返回bean对象
@override
public Car getObjeect() throws Exception{
return new Car(brand,500000);
}
@override
public Class<?> getObjectType()
{
return Car.class;
}
@override
public boolean isSingleton(){
return true;
}
}
xml配置
通过FactoryBean来配置Bean的实例
property:配置FactoryBean的属性,但实际返回的实例是FactoryBean的getObject()方法
<bean id="car" class="...CarFactoryBean">
<property name="brand" value="BMW"></property>
</bean>