您可以利用
BeanDefinitionRegistry(在此处查找API)动态删除或注册Bean。
因此,在您的
SpringUtil类中,您可以使用添加以下方法来删除现有的bean定义
removeBeanDefinition(),然后使用来添加新的bean定义
registerBeanDefinition()。
public void removeExistingAndAddNewBean(String beanId) { AutowireCapableBeanFactory factory = applicationContext.getAutowireCapableBeanFactory(); BeanDefinitionRegistry registry = (BeanDefinitionRegistry) factory; registry.removeBeanDefinition(beanId); //create newBeanObj through GenericBeanDefinition registry.registerBeanDefinition(beanId, newBeanObj);}


