Spring 通过FactoryBean来配置bean
标签(空格分隔): Spring
除了之前全类名和工厂方法这两种形式来配置bean之外,还可以使用FactoryBean的形式来配置bean。下面是一个例子:
首先先定义一个类,实现了actoryBean这个接口:
public class CarFactoryBean implements FactoryBean{
private String brand;
public String getBrand() {
return brand;
}
public void setBrand(String brand) {
this.brand = brand;
}
@Override
public Car getObject() throws Exception {
// TODO Auto-generated method stub
return new Car("BMW",500000);
}
@Override
public Class<?> getObjectType() {
// TODO Auto-generated method stub
return Car.class;
}
@Override
public boolean isSingleton() {
// TODO Auto-generated method stub
return true;
}
}
当spring容器根据配置文件来生成bean的时候,这个bean的实例就是由getObject()这个方法来返回的,所以本例子中返回的bean实例就是new Car(“BMW”,500000)。
getObjectType()方