这篇文章将为大家详细讲解有关怎么在春季启动项目启动时执行特定方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
Springboot给我们提供了两种“开机启动”某些方法的方式:ApplicationRunner和CommandLineRunner。
这两种方法提供的目的是为了满足,在项目启动的时候立刻执行某些方法。我们可以通过实现ApplicationRunner和CommandLineRunner,来实现,他们都是在SpringApplication执行之后开始执行的。
CommandLineRunner接口可以用来接收字符串数组的命令行参数,ApplicationRunner是使用ApplicationArguments用来接收参数的,貌似后者更牛逼一些。
先看看CommandLineRunner:
package com.springboot.study; import org.springframework.boot.CommandLineRunner; import org.springframework.stereotype.Component;/* * ,* Created by  pangkunkun 提醒2017/9/3。 ,*/@ component public class  MyCommandLineRunner implements  CommandLineRunner { @Override才能 public 才能;void 运行(字符串…,var1), throws 异常{ ,,,System.out.println(“却;能够will be execute when 从而project was 开始!“); ,,} }
ApplicationRunner:
package com.springboot.study; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.stereotype.Component; @ component public class  MyApplicationRunner implements ApplicationRunner  { @Override才能 public 才能;void 运行(ApplicationArguments var1), throws 异常{ ,,,System.out.println (“MyApplicationRunner  class will be execute when 从而project was 开始!“); ,,} }
这两种方式的实现都很简单,直接实现了相应的接口就可以了。记得在类上加@ component注解。
如果想要指定启动方法执行的顺序,可以通过实现org.springframework.core.Ordered接口或者使用org.springframework.core.annotation。顺序注解来实现。
这里我们以ApplicationRunner为例来分别实现。
命令接口:
package com.springboot.study; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.core.Ordered; import org.springframework.stereotype.Component;/* * ,* Created by  pangkunkun 提醒2017/9/3。 ,*/@ component public class  MyApplicationRunner implements  ApplicationRunner下令{ @Override才能 public 才能;int  getOrder () { ,,,return 1;//通过设置这里的数字来知道指定顺序 ,,} @Override才能 public 才能;void 运行(ApplicationArguments var1), throws 异常{ ,,,System.out.println (“MyApplicationRunner1 !“); ,,} }
顺序注解实现方式:
package com.springboot.study; import org.springframework.boot.ApplicationArguments; import org.springframework.boot.ApplicationRunner; import org.springframework.core.Ordered; import org.springframework.core.annotation.Order; import org.springframework.stereotype.Component; @ component @Order (value =, 1) public class  MyApplicationRunner implements  ApplicationRunner { @Override才能 public 才能;void 运行(ApplicationArguments var1), throws 异常{ ,,,System.out.println (“MyApplicationRunner1 !“); ,,} }
springboot是什么
springboot一种全新的编程规范,其设计目的是用来简化新弹簧应用的初始搭建以及开发过程,springboot也是一个服务于框架的框架,服务范围是简化配置文件。
关于怎么在春季启动项目启动时执行特定方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看的到。