在java配置文件中按名称获取bean
我有一个java配置文件(带有@configuration注释的类)。它有一个带有@Bean注释的方法,我想根据一些参数实例化这个Bean。换句话说,我希望通过名称获取一个bean(通过参数传递)并实例化这个bean。在java配置文件中按名称获取bean,java,spring,Java,Spring,我有一个java配置文件(带有@configuration注释的类)。它有一个带有@Bean注释的方法,我想根据一些参数实例化这个Bean。换句话说,我希望通过名称获取一个bean(通过参数传递)并实例化这个bean。 是否可以在@configuration类中执行此操作? config包含参数,我希望使用此参数并通过该名称获取bean。类似的操作应该可以: @Configuration public class ApplicationConfig { @Resource p
是否可以在@configuration类中执行此操作?
config包含参数,我希望使用此参数并通过该名称获取bean。类似的操作应该可以:
@Configuration
public class ApplicationConfig {
@Resource
private Config config;
@Autowired
private ApplicationContext appContext;
@Bean
public Object application() throws ParseException {
return new SampleApp(
(appContext.getBean("beanNameFromConfig"));
}
}
像这样的方法应该会奏效:
@Configuration
public class ApplicationConfig {
@Resource
private Config config;
@Autowired
private ApplicationContext appContext;
@Bean
public Object application() throws ParseException {
return new SampleApp(
(appContext.getBean("beanNameFromConfig"));
}
}