Spring Boot: использование ApplicationRunner или CommandLineRunner

Если вам нужно запустить какой-то определенный код после запуска SpringApplication, вы можете реализовать интерфейсы ApplicationRunner или CommandLineRunner. Оба интерфейса работают одинаково и предлагают один метод run, который вызывается непосредственно перед завершением SpringApplication.run(…).

Интерфейсы CommandLineRunner предоставляют доступ к аргументам приложения в виде простого строкового массива, тогда как ApplicationRunner использует ApplicationArguments. В следующем примере показан CommandLineRunner с методом run:

import org.springframework.boot.*;
import org.springframework.stereotype.*;

@Component
public class MyBean implements CommandLineRunner {

    public void run(String... args) {
        // Делает что-нибудь...
    }

}

Если определены несколько компонентов CommandLineRunner или ApplicationRunner, которые должны вызываться в определенном порядке, вы можете дополнительно реализовать интерфейс org.springframework.core.Ordered или использовать аннотацию org.springframework.core.annotation.Order.


Читайте также:


Комментарии

Популярные сообщения из этого блога

Методы класса Object в Java

Как получить текущий timestamp в Java

Основные опции JVM для повышения производительности и отладки