首页  

springboot ApplicationContextInitializer 使用     所属分类 springboot 浏览量 1362
spring容器刷新之前回调接口
在容器刷新之前调用该类的 initialize 方法,并将 ConfigurableApplicationContext 类的实例传递给该方法
可以在 initialize 方法里 获取到 ConfigurableApplicationContext 

import java.util.Date;

import org.springframework.context.ApplicationContextInitializer;
import org.springframework.context.ConfigurableApplicationContext;

public class MyApplicationContextInitializer implements ApplicationContextInitializer {
     @Override
     public void initialize(ConfigurableApplicationContext applicationContext) { 
         System.out.println(this.getClass().getSimpleName()+" run "+new Date());
         System.out.println("applicationContext="+applicationContext);
         System.out.println("environment="+applicationContext.getEnvironment());
         // 可以在这里 把 applicationContext 和  environment 注入到静态工具类里
     }
 }
 

MyApplicationContextInitializer 使用

SpringApplication application = new SpringApplication(DemoApp.class);
application.addInitializers(new MyApplicationContextInitializer());
application.run(args);


完整代码
https://gitee.com/dyyx/springboothello/blob/master/src/main/java/demo/DemoApp.java
https://gitee.com/dyyx/springboothello/blob/master/src/main/java/demo/MyApplicationContextInitializer.java

上一篇     下一篇
grafana数据接口

grafana 日PV 柱状图

prometheus 查询例子

日志框架冲突及解决方法

linux熵池太小导致随机函数阻塞

Random和SecureRandom