实际应用中,我们会有在项目服务启动的时候就去加载一些数据或做一些事情这样的需求。
为了解决这样的问题,Spring Boot 为我们提供了一个方法,通过实现接口 CommandLineRunner 来实现。
很简单,只需要一个类就可以,无需其他配置。创建实现接口 com.kfit.runner.CommandLineRunner 的类
@Order注解(或者实现Order接口)来规定所有CommandLineRunner实例的运行顺序。
为了解决这样的问题,Spring Boot 为我们提供了一个方法,通过实现接口 CommandLineRunner 来实现。
很简单,只需要一个类就可以,无需其他配置。创建实现接口 com.kfit.runner.CommandLineRunner 的类
package com.wx.boot;
import org.springframework.boot.CommandLineRunner;
import org.springframework.stereotype.Component;
@Component
public class MyStartUp01 implements CommandLineRunner{
public void run(String... args) throws Exception {
System.out.println("执行初始化操作>>>>>>>>>>>>>1");
}
}
Spring Boot应用程序在启动后,会遍历CommandLineRunner接口的实例并运行它们的run方法。也可以利用
@Order注解(或者实现Order接口)来规定所有CommandLineRunner实例的运行顺序。
package com.wx.boot;
import org.springframework.boot.CommandLineRunner;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
@Component
@Order(1)
public class MyStartUp02 implements CommandLineRunner{
public void run(String... args) throws Exception {
System.out.println("执行初始化操作>>>>>>>>>>>>>2");
}
}
运行结果如图