当前位置:网站首页>ApplicationContextInitializer的三种使用方法

ApplicationContextInitializer的三种使用方法

2022-06-24 08:05:00 cx7

ApplicationContextInitializer是在Springboot启动过程(refresh方法前)调用,ApplicationContextInitializer实现主要有3中方式:
先创建一个类实现ApplicationContextInitializer这个接口,实现对应的方法。

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

public class TestContextInitializer implements ApplicationContextInitializer {
    
    @Override
    public void initialize(ConfigurableApplicationContext applicationContext) {
    
        System.out.println("我加载了!!!!!!!!!!!");
    }
}

1、使用spring.factories方式
在resource下面新建/META-INF/spring.factories文件。
在这里插入图片描述
2、application.properties添加配置方式:
对于这种方式是通过DelegatingApplicationContextInitializer这个初始化类中的initialize方法获取到application.properties中context.initializer.classes对应的类并执行对应的initialize方法。只需要将实现了ApplicationContextInitializer的类添加到application.properties即可。如下:在这里插入图片描述
3、在启动类修改启动方式。

package com.llq.testdemo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ApplicationContextInitializer;

@SpringBootApplication
public class TestDemoApplication {
    

    public static void main(String[] args) {
    
// SpringApplication.run(TestDemoApplication.class, args);
        SpringApplication application = new SpringApplication(TestDemoApplication.class);
        application.addInitializers(new TestContextInitializer());
        application.run(args);
    }

}

在这里插入图片描述

原网站

版权声明
本文为[cx7]所创,转载请带上原文链接,感谢
https://blog.csdn.net/qq_16733389/article/details/125382422