Встречается на собеседованиях • сегодня

Как поэтапно запускается Spring Boot приложение

  1. Загрузка класса SpringApplication:

    • Инициализируется через SpringApplication.run(), анализирует classpath на наличие Spring Boot компонентов.
  2. Определение типа приложения:

    • Проверяется, является ли приложение веб-приложением (Servlet, Reactive) или консольным.
  3. Создание и настройка ApplicationContext:

    • В зависимости от типа приложения создается AnnotationConfigServletWebServerApplicationContext (для веба) или аналогичный.
  1. Сканирование компонентов:

    • Через @ComponentScan ищет бины, контроллеры, сервисы и другие аннотированные классы.
  2. Загрузка конфигураций:

    • Применя @Configuration классы и application.properties/application.yml.
  3. Запуск встроенного сервера (если веб):

    • Например, Tomcat, Jetty или Netty (для Reactive) стартует на порту из конфига (по умолчанию 8080).
  4. Вызов CommandLineRunner/ApplicationRunner:

    • Если такие бины есть, выполняет их после старта контекста.

Пример минимального приложения:

java
@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы