SpringBoot启动后执行
只需实现2个接口中的其中一个
org.springframework.boot.CommandLineRunnerororg.springframework.boot.ApplicationRunner
import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
@Component
@Order(1)
public class AppRunner implements ApplicationRunner {
@Override
public void run(ApplicationArguments args) throws Exception {
System.out.println("======");
System.out.println("==I am running after application started==");
System.out.println("======");
}
}
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
@Component
@Order(value = 2)
public class CmdRunner implements CommandLineRunner {
@Override
public void run(String... args) throws Exception {
System.out.println("******");
System.out.println("**cmd running**");
System.out.println("******");
}
}
@Component: Spring 管理生命周期
@Order 当启动后有多个启动后执行的Runner 要有顺序的时候,可以设置执行顺序

本文介绍如何在SpringBoot应用启动后执行特定任务,通过实现ApplicationRunner或CommandLineRunner接口,并使用@Component注解将其纳入Spring管理。通过@Order注解可定义执行顺序。
442

被折叠的 条评论
为什么被折叠?



