Spring如何强制使用bean工厂,用于具有运行时参数的原型bean

时间:2018-02-01 08:09:25

标签: spring dependency-injection

在我的春季启动应用程序中,我有"正常"单身豆," autowire"他们需要通过私人构造函数的东西。所以不可能打电话给#34; new"代码中的任何地方。

但我也有"原型"需要创建运行时参数的bean。要创建这样的bean,我可以使用这种方法(惰性实例化原型bean):Spring bean with runtime constructor arguments

问题是构造函数被使用,因此必须是#34;可见"。在Spring中有没有办法用私有构造函数创建这样的原型bean?我想强制使用BeanFactory来创建它们。

1 个答案:

答案 0 :(得分:0)

您可以尝试使用

的实现来构建原型bean
factoryBean,public interface FactoryBean<T> {
  T getObject() throws Exception;
  Class<T> getObjectType();
  boolean isSingleton();
}

所以你可以在里面封装更复杂的逻辑,

一个完整的例子here