В Sprint Boot 2.x мы можем инициализировать наше приложение одним из 2 подходов:
@SpringBootApplication
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
init();
}
private void init() {
// Init the app from in here...
}
}
Или мы можем использовать слушатель запуска, который будет выполняться при запуске:
public class StartupListener implements ApplicationListener<ContextRefreshedEvent> {
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
// Init the app from in here...
}
}
Мне интересно, какие компромиссы существуют, если принять любой подход.Не зная о «жизненном цикле» приложения Spring Boot, мне интересно, есть ли вещи, к которым у меня будет / не будет доступа ни в одной из установок.Заранее спасибо!