FactoryBean
1.作用
可以使用FactoryBean向容器中添加组件。
2.使用
2.1创建一个类实现FactoryBean接口,重写里面的方法。
public class CarFactoryBean implements FactoryBean<Car>{
//返回一个对象,并加入容器中
@Override
public Car getObject() throws Exception {
// TODO Auto-generated method stub
return new Car();
}
@Override
public Class<?> getObjectType() {
// TODO Auto-generated method stub
return Car.class;
}
//添加到容器中的对象是否是单实例的
public boolean isSingleton() {
return true;
}
}
2.2在配置类中进行注册
@Bean
public CarFactoryBean carFactoryBean() {
return new CarFactoryBean();
}
注意:虽然注册的CarFactoryBean类型,但是实际上注册的是Car类型,如果想要获取CarFactoryBean类型,可以通过context.getBean("&carFactoryBean"),进行获取。