springboot ApplicationContextInitializer 使用
所属分类 springboot
浏览量 1580
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