SpringBoot——Spring Boot 如何在启动后执行初始化任务
在Spring Boot中,你可以通过实现CommandLineRunner
或ApplicationRunner
接口来在应用启动后执行初始化任务。以下是两种方式的简单示例:
使用CommandLineRunner
import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
@Bean
public CommandLineRunner run() {
return args -> {
// 在这里编写你的初始化逻辑
System.out.println("Application started with arguments: " + args);
};
}
}
使用ApplicationRunner
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.Bean;
@SpringBootApplication
public class MyApplication {
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
@Bean
public ApplicationRunner appRunner() {
return new ApplicationRunner() {
@Override
public void run(ApplicationArguments args) throws Exception {
// 在这里编写你的初始化逻辑
System.out.println("Application started with arguments: " + args);
}
};
}
}
两种方式都可以在Spring Boot应用启动后执行一些初始化代码。CommandLineRunner
通过run
方法提供了命令行参数,而ApplicationRunner
通过run
方法提供了一个封装了命令行参数的ApplicationArguments
对象。你可以根据需要选择其中一种实现。
评论已关闭