Как spring boot внутренне обрабатывает http-запрос?

Я вижу, что весенняя загрузка здесь упаковывает артефакт микросервиса как файл jar. Он обрабатывает веб-запросы http через модуль spring-boot-starter-web. Насколько я понимаю, Spring Boot внутренне делает это

  1. Делает веб-сервер включенным
  2. создает файл войны, затем размещает файл войны на сервере.
  3. Затем HTTP-запросы обрабатываются через сервлет, лежащий в spring-boot-starter-web.

Правильно ли я понимаю?

когда jar выполняется, он запускает сервер tomcat изнутри, и после этого ваше приложение упаковывается как war и запускается.

333 10.09.2018 10:31

Нет, это не ... Это не упаковывает и не создает войну. Он сообщает встроенному серверу, где находятся ресурсы, но не создает внутренний файл войны.

M. Deinum 10.09.2018 11:01

@ M.Deinum Понятно, но HTTP-запросы по-прежнему обрабатываются сервлетами, как в данном примере. Верно ?

emilly 10.09.2018 11:11

Он по-прежнему использует сервлеты, фильтры, которые не меняются.

M. Deinum 10.09.2018 12:33
0
4
639
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Ваше понимание почти правильное:

  • Запускает встроенный сервер Tomcat
  • Указывает серверу tomcat, как действовать
  • HTTP-запросы обрабатываются нижележащим ДиспетчерСервлет

какая-либо документация по этому слою сервлетов? В моей компании мы используем его для обработки огромного количества запросов (большие данные), и я пытаюсь понять его эффективные возможности.

Luca Tampellini 10.09.2018 12:34

Упс не правильно поставил ссылку, обновил. Там вы можете найти документацию

Casper 10.09.2018 12:41

точка входа весенней загрузки - это основной метод, внутри основного метода мы вызываем SpringApplication.run (<@ SpringBootApplication аннотированное имя класса>, аргументы); когда мы вызываем основной метод, класс SpringApplication изнутри запускает встроенный сервер, настраивает и развертывает приложение на сервере ... здесь диспетчерский сервлет, зарегистрированный в контексте сервлета на основе проверки OnCondtion, если мы добавлены spring-boot-starter-web, тогда он проверяет наличие или отсутствие диспетчера-сервлета condtion внутри пути к классу, если он доступен, тогда он будет регистрировать диспетчер-сервлет в сервлете контекст

Другие вопросы по теме