2016-08-05 83 views
1

我正在使用下面的代碼來顯示上下文中的所有spring bean。我如何從上下文中刪除bean?從應用程序上下文中刪除Spring Bean

ConfigurableApplicationContext ctx = SpringApplication.run(ProxyApplication.class, args); 
for(String beanName:ctx.getBeanDefinitionNames()){ 
    System.out.println(beanName); 
} 
+1

刪除bean定義? –

回答

5

你可以這樣來做:

ConfigurableApplicationContext ctx = SpringApplication.run(ProxyApplication.class, args); 
    BeanDefinitionRegistry registry = (BeanDefinitionRegistry) ctx.getAutowireCapableBeanFactory(); 
    for(String beanName : ctx.getBeanDefinitionNames()){ 
     System.out.println(beanName); 
     registry.removeBeanDefinition(beanName); 
    } 
相關問題