我需要在应用程序完成启动后才使端点可用。
目前我正在尝试使用Spring ApplicationListener/ContextRefreshedEvent来捕获Spring完成初始化的时间
是否有任何方法可以让它在此时启动我的自定义Rest端点?我试着使用:
BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(ReadinessIndicator.class);
beanFactory.registerBeanDefinition("readinessIndicator", builder.getBeanDefinition());
在运行时添加bean,但它看起来不像被初始化。
正如Aleksander所说,终端在应用程序完成加载后可用。如果您想在所有初始化过程之后触发某些操作,您可以在拥有主方法的类中对方法使用@PostConstruct
注释。示例
@PostConstruct
public void afterInit() {
BeanDefinitionBuilder builder = BeanDefinitionBuilder.rootBeanDefinition(ReadinessIndicator.class);
beanFactory.registerBeanDefinition("readinessIndicator", builder.getBeanDefinition());
}