根据 RESTful 个服务值创建运行时 bean
Create runtime bean based on RESTful service values
有什么方法可以在 spring 上创建运行时 bean。我需要这样做,因为外部实体将通过 RESTful 服务注入 bean 的值。运行时 bean 是否仍然可以自动装配?
完全有可能
在你的控制器中(或者在你的工厂中会更优雅)你需要注入你的应用程序上下文
@Autowired
private ApplicationContext applicationContext;
您可以像这样创建 bean:
YourClassBean yourObject = this.applicationContext.getBean(YourClassBean.class, params);
在您的 Spring 配置中执行此操作:
@Bean
@Scope(value = "prototype")
YourClassBean yourClassBean(String params) {
return new YourClassBean(params);
}
大功告成。
在该示例中,Scope 是 Prototype,这意味着每次调用方法 yourClassBean 时都会获得一个新对象。
同样在那个例子中,参数是一个字符串(它就像你的 bean 的初始化参数,但这完全是可选的,当然你可能需要或想要更多的参数,它完全可以找到)
有什么方法可以在 spring 上创建运行时 bean。我需要这样做,因为外部实体将通过 RESTful 服务注入 bean 的值。运行时 bean 是否仍然可以自动装配?
完全有可能
在你的控制器中(或者在你的工厂中会更优雅)你需要注入你的应用程序上下文
@Autowired
private ApplicationContext applicationContext;
您可以像这样创建 bean:
YourClassBean yourObject = this.applicationContext.getBean(YourClassBean.class, params);
在您的 Spring 配置中执行此操作:
@Bean
@Scope(value = "prototype")
YourClassBean yourClassBean(String params) {
return new YourClassBean(params);
}
大功告成。
在该示例中,Scope 是 Prototype,这意味着每次调用方法 yourClassBean 时都会获得一个新对象。
同样在那个例子中,参数是一个字符串(它就像你的 bean 的初始化参数,但这完全是可选的,当然你可能需要或想要更多的参数,它完全可以找到)