English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
У SpringBoot Starter Web есть две важные функции:
Совместимость с разработкой Web Автоматическая конфигурация
Если вы хотите разработать веб-приложение, то вам нужно добавить следующие зависимости в файл pom.xml:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <version>2.2.2.RELEASE</version> </dependency>
Запуск программы Spring web использует Spring MVC, REST и Tomcat в качестве-default嵌入式服务器. Одна зависимость spring-boot-starter-web позволяет transitively получить все зависимости, связанные с разработкой Web. Она также уменьшает количество зависимостей, входящих в состав.
org.springframework.boot: spring-boot-starter org.springframework.boot: spring-boot-starter-tomcat org.springframework.boot: spring-boot-starter-validation com.fasterxml.jackson.core: jackson-databind org.springframework: spring-web org.springframework: spring-webmvc
по умолчанию spring-boot-starter-web включает следующие зависимости сервера Tomcat:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> <version>2.0.0.RELEASE</version> <scope>compile</scope> </dependency>
spring-boot-starter-web автоматически конфигурирует следующие элементы, необходимые для веб-разработки:
сервлет планировщика страницы ошибок используется для управления статическими зависимостями веб JAR встроенный servlet контейнер
каждое приложение Spring Boot включает встроенный сервер. Встроенный сервер интегрируется как часть deployable приложения. Преимуществом встроенного сервера является то, что нам не нужно предварительно устанавливать сервер в среде. Используя Spring Boot, по умолчанию встроенный сервер составляет Tomcat 。 Spring Boot также поддерживает два других встроенных сервера:
сервер Jetty сервер Undertow
для servlet-стекаприложения, spring-boot-starter-web через включение spring-boot-starter-tomcat чтобы включить Tomcat но мы можем использовать spring-boot-starter-jetty или spring-boot-starter-undertow 。
для reaktorприложения, spring-boot-starter-webflux включая включая spring-boot-starter-reactor-netty чтобы реализовать Reactor Netty но мы можем использовать spring-boot-starter-tomcat, spring-boot-starter-jetty,
Spring Boot также поддерживает сервер под названием сервер Jetty. Это HTTP сервер и контейнер Servlet, который предоставляет функции предоставления статического и динамического контента.
если вы хотите добавить сервер Jetty в приложение, вам нужно добавить spring-boot-starter-jetty зависимости.
помните: . Убедитесь, что вы используете сервер Jetty в приложении, добавляя исключает defaultManager Tomcat сервер. spring-boot-starter-web . Это избегает конфликта между серверами.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jetty</artifactId> </dependency>
мы также можем использовать application.properties файл используется для настройки поведения сервера Jetty.
Spring Boot предоставляет еще один сервер под названием Undertow сервер. Это также嵌入式 веб-сервер, такой как Jetty. Он написан на Java и управляется и спонсируется JBoss. Основные优点 сервера Undertow:
поддержка HTTP/2 поддержка HTTP upgrade поддержка Websocket предоставляет поддержку Servlet 4.0 гибкий встраиваемый
помните: : Убедитесь, что вы используете сервер Undertow в приложении, извлекая из в spring-boot-starterисключает defaultManager Tomcat сервер. -web.избегает конфликта между серверами.
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-undertow</artifactId> </dependency>
мы также можем использовать application.properties файл используется для настройки поведения сервера Undertow.
spring-boot-starter-web включает зависимости spring web, в том числе spring-boot-starter-tomcat. spring-boot-starter-web включает следующее:
spring-boot-starter jackson spring-core spring-mvc spring-boot-starter-tomcat
spring-boot-starter-tomcat включает все содержимое, связанное с сервером Tomcat.
core el logging websocket
starter-tomcat имеет следующие зависимости:
<dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-core</artifactId> <version>8.5.23</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-el</artifactId> <version>8.5.23</version> <scope>compile</scope> </dependency> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-websocket</artifactId> <version>8.5.23</version> <scope>compile</scope> </dependency>
Мы также можем использовать spring-mvc А не использовать встроенный сервер Tomcat. Если это необходимо, нам нужно использовать
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-tomcat</artifactId> </exclusion> </exclusions> </dependency>