SpringBoot源码之ApplicationContextInitializer《C extends ConfigurableApplicationContext》

回调接口,用于在{@linkplain ConfigurableApplicationContext#refresh() refreshed}之前初始化Spring配置的应用程序上下文。

通常在需要应用程序上下文初始化编程的Web应用程序中使用。

支持发现 Spring的{@link org.springframework.core.Ordered Ordered}接口实现或者@{@link org.springframework.core.annotation.Order Order}注解定义在调用之前进行排序。

void initialize(C applicationContext);初始化给定的应用程序上下文。

ApplicationContextInitializer配置在classpath*:META-INF/spring.factories的配置文件中,取属性KEY=org.springframework.context.ApplicationContextInitializer的值,如图:

SpringBoot源码之ApplicationContextInitializer《C extends ConfigurableApplicationContext》