一、简述
ApplicationContextInitializer是Spring框架原有的概念, 这个类的主要目的就是在 ConfigurableApplicationContext类型(或者子类型)的ApplicationContext做refresh之前,允许我们 对ConfigurableApplicationContext的实例做进一步的设置或者处理。
二、实现该接口
import org.springframework.context.ApplicationContextInitializer; import org.springframework.context.ConfigurableApplicationContext; public class TestApplicationContextInitializer implements ApplicationContextInitializer { @Override public void initialize(ConfigurableApplicationContext configurableApplicationContext) { // 打印容器里面有多少个bean System.out.println("bean count====="+configurableApplicationContext.getBeanDefinitionCount()); } }
三、注册
@Slf4j @EnableScheduling @SpringBootApplication public class CbdShopApplication{ public static void main(String[] args) { SpringApplication application = new SpringApplication(CbdShopApplication.class); application.addInitializers(new TestApplicationContextInitializer()); application.run(args); } }
启动项目,看到控制台打印:
bean count=====6