打印所有已加载的Spring Bean-Spring Boot

我如何知道作为Spring Boot" title="Spring Boot">Spring Boot应用程序一部分加载的所有bean的名称?我想在main方法中有一些代码来打印服务器启动后加载的bean的详细信息。

回答:

如spring-boot入门指南中所示:

@SpringBootApplication

public class Application {

public static void main(String[] args) {

SpringApplication.run(Application.class, args);

}

@Bean

public CommandLineRunner commandLineRunner(ApplicationContext ctx) {

return args -> {

System.out.println("Let's inspect the beans provided by Spring Boot:");

String[] beanNames = ctx.getBeanDefinitionNames();

Arrays.sort(beanNames);

for (String beanName : beanNames) {

System.out.println(beanName);

}

};

}

}

如果您想这样做,可以使用[getSingletonNames()。但小心点。此方法仅返回已实例化的bean。如果尚未实例化Bean,则 通过返回它getSingletonNames()

以上是 打印所有已加载的Spring Bean-Spring Boot 的全部内容, 来源链接: utcz.com/qa/434343.html

回到顶部