1. 实现ApplicationRunner接口:
这种方式使用ApplicationArguments来接收命令行参数,相对比较方便(args.getOptionValues(key))
@Component
@Order(value = 1)
public class StartComponent implements ApplicationRunner
{
@Override
public void run(ApplicationArguments args)
throws Exception
{
System.out.println("项目启动后即执行此方法!");
}
}
2. 实现CommandLineRunner接口:
这种方式使用字符串数组来接收命令行参数
public class StartComponent implements CommandLineRunner
{
@Override
public void run(String... args)
throws Exception
{
System.out.println("项目启动后即执行此方法!");
}
}
其中@Order注解来指定方法执行的顺序,也可通过实现org.springframework.core.Ordered接口并重写getOrder()方法来实现:
//class implements Ordered
@Override
public int getOrder(){
return 1;//指定顺序
}