Spring Boot命令行运行器的实现方法

CommandLineRunner是一个带有run方法的简单spring引导接口。Spring Boot启动后将自动调用实现CommandLineRunner接口的所有bean的run方法。

Command Line Runner在加载应用程序上下文之后以及Spring Application run方法完成之前执行,相当于你的应用的初始化过程,一般用来实现一些数据预先加载或预先处理。

@SpringBootApplication
<b>public</b> <b>class</b> DemoApplication implements CommandLineRunner {
  <b>private</b> <b>final</b> Logger logger = LoggerFactory.getLogger(DemoApplication.<b>class</b>);
  <b>public</b> <b>static</b> <b>void</b> main(String args) {
    SpringApplication.run(DemoApplication.<b>class</b>, args);
  }
  @Override
  <b>public</b> <b>void</b> run(String... strings) throws Exception {
   ....
  }
}

上面的run方法参数是命令行参数,使用java -jar 启动这个应用的命令行参数。

如果有多个命令行运行器,可以进行排序:

@Component
@Order(1)
<b>public</b> <b>class</b> AnotherDatabaseLoader implements CommandLineRunner {

@Component
@Order(2)
<b>public</b> <b>class</b> DataLoader implements CommandLineRunner {

另外一种在主应用的写法:

@SpringBootApplication
<b>public</b> <b>class</b> UnsplashApplication {
  <b>public</b> <b>static</b> <b>void</b> main(String args) {
    SpringApplication.run(UnsplashApplication.<b>class</b>, args);
  }
  @Bean
  CommandLineRunner runner(){
    <b>return</b> args -> {
      System.out.println(<font>"CommandLineRunner running in the UnsplashApplication class..."</font><font>);
    };
  }
}
</font>

总结

以上所述是小编给大家介绍的Spring Boot命令行运行器的实现方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对我们网站的支持!

(0)

相关推荐

  • 如何使用Spring Boot ApplicationRunner解析命令行中的参数

    使用Spring提供的CommandLineRunner接口可以实现了一个命令行应用程序.但是,参数/选项/参数处理却不是那么好.幸运的是,有一种更好的方法可以使用Spring Boot编写命令行应用程序,并且还可以使用ApplicationRunner接口进行解析. 在我们开始快速说明之前.在这两种情况下,无论是CommandLineRunner还是ApplicationRunner,都始终支持Spring的属性处理.我们可以像往常一样使用@Value注释注入值. 完整的工作源代码在这里 首先

  • Spring Boot命令行运行器的实现方法

    CommandLineRunner是一个带有run方法的简单spring引导接口.Spring Boot启动后将自动调用实现CommandLineRunner接口的所有bean的run方法. Command Line Runner在加载应用程序上下文之后以及Spring Application run方法完成之前执行,相当于你的应用的初始化过程,一般用来实现一些数据预先加载或预先处理. @SpringBootApplication <b>public</b> <b>cl

  • 基于spring boot 命令行启动的一些坑

    目录 spring boot 命令行启动的一些坑 1.spring boot项目启动时可以指定启动的参数 2.使用–spring.profiles.active=test,无论如何都没办法修改环境 spring-boot命令行启动(指定端口启动) springboot指定端口的三种方式 方法一 方法二 spring boot 命令行启动的一些坑 1.spring boot项目启动时可以指定启动的参数 例如: java -jar Project.jar --spring.profiles.acti

  • spring boot 命令行启动的方式

    在使用spring boot 构建应用启动时,我们在工作中都是通过命令行来启动应用,有时候会需要一些特定的参数以在应用启动时,做一些初始化的操作. spring boot 提供了 CommandLineRunner 和 ApplicationRunner 这两个接口供用户使用. 1. CommandLineRunner 1.1 声明: @FunctionalInterface public interface CommandLineRunner { /** * Callback used to

  • 如何在Spring Boot启动时运行定制的代码

    Spring Boot会自动为我们做很多配置,但迟早你需要做一些自定义工作.在本文中,您将学习如何挂钩应用程序引导程序生命周期并在Spring Boot启动时执行代码. 1.执行bean初始化的方法 Spring启动应用程序后运行某些逻辑的最简单方法是将代码作为所选bean引导过程的一部分来执行. 只需创建一个类,将其标记为Spring组件,并将应用程序初始化代码放在带有@PostConstruct注释的方法中.理论上,您可以使用构造函数而不是单独的方法,但将对象的构造与其实际责任分开是一种很好

  • Java命令行运行错误之找不到或无法加载主类问题的解决方法

    目录 前言: 一. 问题分析 二. 问题解决 1. 类名错误 2. 类所在位置未添加至类加载路径中 三.扩展知识 1. JDK目录结构及环境变量介绍 2. 为什么jdk1.5后不需要配置环境变量了? 总结 前言: 虽然学习Java语言约有两年多,但在最近需要使用命令行工具编译并运行Java程序时,还是报错了.花费了一些时间,解决了该问题,发现解决方法在初学Java时使用过.一则,为了避免以后再出现同样的问题而浪费不必要的时间:二则,作为使用该语言的程序员,对于该语言的一些基本问题,应该有清晰的理

  • Spring Boot监控SQL运行情况的全过程

    目录 前言 1. 准备工作 2. 引入 Druid 3. 测试 4. 去广告 总结 前言 今天想和大家聊一聊 Druid 中的监控功能. Druid 数据库连接池相信很多小伙伴都用过,个人感觉 Druid 是阿里比较成功的开源项目了,不像 Fastjson 那么多槽点,Druid 各方面一直都比较出色,功能齐全,使用也方便,基本的用法就不说了,今天我们来看看 Druid 中的监控功能. 1. 准备工作 首先我们来创建一个 Spring Boot 工程,引入 MyBatis 等,如下: 选一下 M

  • 如何利用Spring Boot 监控 SQL 运行情况

    目录 前言 1. 准备工作 2. 引入 Druid 3. 测试 4. 去广告 前言 今天想和大家聊一聊 Druid 中的监控功能. Druid 数据库连接池相信很多小伙伴都用过,个人感觉 Druid 是阿里比较成功的开源项目了,不像 Fastjson 那么多槽点,Druid 各方面一直都比较出色,功能齐全,使用也方便,基本的用法就不说了,今天我们来看看 Druid 中的监控功能. 1. 准备工作 首先我们来创建一个 Spring Boot 工程,引入 MyBatis 等,如下: 选一下 MyBa

  • python自动化测试之从命令行运行测试用例with verbosity

    本文实例讲述了python自动化测试之从命令行运行测试用例with verbosity,分享给大家供大家参考.具体如下: 实例文件recipe3.py如下: class RomanNumeralConverter(object): def __init__(self, roman_numeral): self.roman_numeral = roman_numeral self.digit_map = {"M":1000, "D":500, "C"

  • 在win和Linux系统中python命令行运行的不同

    今天,在完成一个小的python习题,习题的主要内容是读取一个帮助模块,并保存到本地文件. 知道是用pydoc进行模块的读取,但是在windows系统下,调用os模块之后,结果总是为空. 核心语句: helpfile = os.popen('pydoc %s' %module).read() 此语句在Linux下可以正常运行,结果正常. 后来发现,在Windows下,该修改为: helpfile = os.popen('python -m pydoc %s' %module).read() 命令

  • python环境路径配置以及命令行运行脚本

    本文实例为大家分享了python环境路径设置方法,以及命令行运行python脚本,供大家参考,具体内容如下 找Python安装目录,设置环境路径以及在命令行运行python脚本 第一点:找Python安装目录 方法一: 方法二: 输入import sys print(sys.path) 化黑线处 第二点:找到安装目录后就可以开始设置环境变量 这里我的安装目录为C:\Program Files\Python36 再字符串的末尾,加一个分号; 然后再输入你安装python的路径,如图所示 一路点确定

随机推荐