当前位置: 代码迷 >> 综合 >> 设置springboot启动后立即执行某方法(开机启动)的两种方式
  详细解决方案

设置springboot启动后立即执行某方法(开机启动)的两种方式

热度:46   发布时间:2023-10-21 15:12:47.0

1. 实现ApplicationRunner接口:

这种方式使用ApplicationArguments来接收命令行参数,相对比较方便(args.getOptionValues(key))

@Component
@Order(value = 1)
public class StartComponent implements ApplicationRunner
{@Overridepublic void run(ApplicationArguments args)throws Exception{System.out.println("项目启动后即执行此方法!");}
}

2. 实现CommandLineRunner接口:

这种方式使用字符串数组来接收命令行参数

public class StartComponent implements CommandLineRunner
{@Overridepublic void run(String... args)throws Exception{System.out.println("项目启动后即执行此方法!");        }
}

其中@Order注解来指定方法执行的顺序,也可通过实现org.springframework.core.Ordered接口并重写getOrder()方法来实现:

//class implements Ordered
@Override
public int getOrder(){return 1;//指定顺序
}