Вызвать метод обслуживания после успешного развертывания Spring Boot - PullRequest
1 голос
/ 14 мая 2019

У меня есть приложение весенней загрузки, и я хочу вызвать сервисный метод после успешного развертывания приложения.

Пример:

@Service
public class MyServiceImpl implements MyUtilityService<Object, Object>{

    @Override
    public Object runOnce(Object credential) {                  
        return null;
    }
}

Я хочу вызвать myService.runOnce(...) только после успешного развертывания моего приложения

1 Ответ

4 голосов
/ 14 мая 2019

Вы можете зарегистрировать EventListener для ApplicationReadyEvent.

Из документов:

Событие опубликовано настолько поздно, насколько это возможно, чтобы указать, что приложение готово к обслуживанию запросов.Источником события является само SpringApplication, но остерегайтесь изменения его внутреннего состояния, поскольку к тому времени все шаги инициализации будут завершены.

@Service
public class MyServiceImpl implements MyUtilityService<Object, Object>{

    @Override
    @EventListener(ApplicationReadyEvent.class)
    public Object runOnce(Object credential) {                  
        return null;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...