spring-boot启动时加载数据 CommandlineRunner

背景:有时候,在实际项目需求中可能需要在spring-boot启动时,需要加载一些数据获取运行某些方法,为此,spring-boot提供了一写方法;

第一种情况:spring-boot启动时只需要加载少写方法或者数据,实现方式是:

自定义一个类,然后让该类去实现一个CommandlineRunner接口,并且去实现该接口中的run方法,将要预执行的数据或者预加载的方法可以放在其中;

@Component
public class StartLoad implements CommandLineRunner{
@Override
public void run(String... arg0) throws Exception {
System.out.println("在服务启动时进行加载相应数据");

}


}

第二种情况:spring-boot启动时需要加载多个方法,并且多个方法之间有先后顺序的处理方式:

要加载的方法一:

@Component

@Order(“1”)
public class StartLoad implements CommandLineRunner{
@Override
public void run(String... arg0) throws Exception {
System.out.println("在服务启动时进行加载的方法一");
}
}

要加载的方法二:

@Component

@Order(“1”)
public class StartLoad implements CommandLineRunner{
@Override
public void run(String... arg0) throws Exception {
System.out.println("在服务启动时进行加载的方法一");
}
}

使用@Order注解标明方法加载的顺序时,Order中的值越小,方法的优先级就越高


猜你喜欢

转载自blog.csdn.net/qq_34125349/article/details/77460866