Spring Boot 运行程序

Application Runner 和 Command Line Runner 接口允许我们在 Spring Boot 应用程序启动后执行代码。 我们可以使用这些接口在应用程序启动后立即执行任何操作。 本章将详细讨论它们。


Application Runner

Application Runner 是一个接口,用于在 Spring Boot 应用程序启动后执行代码。 下面给出的示例显示了如何在主类文件上实现 Application Runner 接口。

package com.study;

import org.springframework.boot.ApplicationArguments;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class MyApplication implements ApplicationRunner {

    @RequestMapping("/")
    String home() {
        return "Hello 迹忆客(jiyik.com)!";
    }

    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class,args);
    }

    @Override
    public void run(ApplicationArguments arg0) throws Exception {
        System.out.println("Hello Application Runner");
    }
}

现在,如果我们从下面的控制台窗口看到 Hello Application Runner ,则在 Tomcat 启动后执行 println 语句。

Spring Boot Application Runner


命令行运行器

Command Line Runner 是一个接口。 它用于在 Spring Boot 应用程序启动后执行代码。 下面给出的示例显示了如何在主类文件上实现 Command Line Runner 接口。

package com.study;

import org.springframework.boot.CommandLineRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@SpringBootApplication
@RestController
public class MyApplication implements CommandLineRunner {

    @RequestMapping("/")
    String home() {
        return "Hello 迹忆客(jiyik.com)!";
    }

    public static void main(String[] args) {
        SpringApplication.run(MyApplication.class,args);
    }

    @Override
    public void run(String... arg0) throws Exception {
        System.out.println("Hello Command Line Runner");
    }
}

看下面的控制台窗口 **Hello Command Line Runner **, println 语句是在Tomcat启动后执行的。

Spring Boot Command Line Runner

查看笔记

扫码一下
查看教程更方便