@Component
public class NewBeanFactory implements FactoryBean<NewBeanWrapper> {
@Override
public NewBeanWrapper getObject() throws Exception {
NewBeanWrapper newBeanWrapper = new NewBeanWrapper();
newBeanWrapper.setName("工厂创建出来的bean");
return newBeanWrapper;
}
@Override
public Class<?> getObjectType() {
return NewBeanWrapper.class;
}
}
这里的NewBeanWrapper 是自定义的 只要实现FactoryBea就能构建一个被spring管理的bean了
使用的可以像以下两种方式使用
@Component
public class TestNewBeanWrapper {
private NewBeanWrapper newBeanWrapper;
public TestNewBeanWrapper(NewBeanWrapper newBeanWrapper) {
this.newBeanWrapper = newBeanWrapper;
}
}
这样会直接在构建TestNewBeanWrapper对象时注入NewBeanWrapper
或者 使用autowired注解注入
@Autowired
private NewBeanWrapper newBeanWrapper;