【问题标题】:Removing Spring Beans from Application Context [duplicate]从应用程序上下文中删除 Spring Bean [重复]
【发布时间】:2016-08-05 16:12:45
【问题描述】:

我正在使用下面的内容来显示上下文中的所有 spring bean。如何从上下文中删除 bean?

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

【问题讨论】:

  • 删除 bean 定义?

标签: java spring spring-boot


【解决方案1】:

你可以这样做:

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-11-21
    • 1970-01-01
    • 2014-02-14
    • 1970-01-01
    • 1970-01-01
    • 2023-03-25
    • 1970-01-01
    • 2013-04-12
    相关资源
    最近更新 更多