我需要通過webservice在運行時修改一些spring bean。我使用ApplicationContext。在運行時使用ApplicationContext以編程方式修改spring bean
ConfigurableApplicationContext configContext = (ConfigurableApplicationContext)applicationContext;
ConfigurableListableBeanFactory registery = configContext.getBeanFactory();
registery.registerSingleton("XXX", new MyNewBeanDefintion());
在我@Configuration類有
@Bean
public ParentClass campaignSelection(){
if(type.equals("X")) {
return new X();
}
else if(type.equals("Y")){
return new Y();
}
return null;
}
與單純
public interface ParentClass {
public Item selectOneItem();
}
public class X implements ParentClass {
@Override
public Item selectOneItem() {
// return item
}
}
public class Y implements ParentClass {
@Override
public Item selectOneItem() {
// return item
}
}
,我需要,我需要這個bean X之間切換, Y在運行時
你是指修改,更新屬性值還是別的什麼意思?目標豆的範圍是什麼? – Evgeny
@Evgeny更新bean的注入值 – Hoda