Es gibt zwei wichtige Funktionen von Spring-Boot-Starter-Web:
- Es ist für die Webentwicklung kompatibel
- Automatische Konfiguration
Wenn wir eine Webanwendung entwickeln möchten, müssen wir die folgende Abhängigkeit in der Datei pom.xml hinzufügen:
org.springframework.boot spring-boot-starter-web 2.2.2.RELEASE
Starter of Spring Web verwendet Spring MVC, REST und Tomcat als standardmäßigen eingebetteten Server. Die einzelne Spring-Boot-Starter-Web-Abhängigkeit zieht transitiv alle Abhängigkeiten im Zusammenhang mit der Webentwicklung ein. Dadurch wird auch die Anzahl der Build-Abhängigkeiten reduziert. Das Spring-Boot-Starter-Web hängt transitiv von Folgendem ab:
- 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
Standardmäßig enthält spring-boot-starter-web die folgende Tomcat-Serverabhängigkeit:
org.springframework.boot spring-boot-starter-tomcat 2.0.0.RELEASE compile
Das Spring-Boot-Starter-Web konfiguriert automatisch die folgenden Dinge, die für die Webentwicklung erforderlich sind:
ist Eiweißfett
- Dispatcher-Servlet
- Fehlerseite
- Web-JARs zur Verwaltung der statischen Abhängigkeiten
- Eingebetteter Servlet-Container
Eingebetteter Spring Boot-Webserver
Jede Spring Boot-Anwendung enthält einen eingebetteten Server. Der eingebettete Server ist als Teil einer bereitstellbaren Anwendung eingebettet. Der Vorteil des eingebetteten Servers besteht darin, dass wir keinen vorinstallierten Server in der Umgebung benötigen. Bei Spring Boot ist der Standard-Embedded-Server Kater . Spring Boot unterstützt außerdem zwei weitere eingebettete Server:
Verwendung eines anderen eingebetteten Webservers
Für Servlet-Stack Anwendungen, die Spring-Boot-Starter-Web beinhaltet Kater Durch Einbeziehung Spring-Boot-Starter-Tomcat , aber wir können verwenden Spring-Boot-Starter-Steg oder Spring-Boot-Starter-Sog stattdessen.
Für reaktiver Stapel Anwendungen, die Spring-Boot-Starter-Webflux beinhaltet Reaktor Netty Durch Einbeziehung Spring-Boot-Starter-Reaktor-Netty , aber wir können verwenden Spring-Boot-Starter-Tomcat, Spring-Boot-Starter-Steg, oder Spring-Boot-Starter-Sog stattdessen.
Jetty-Server
Der Spring Boot unterstützt auch einen eingebetteten Server namens Jetty-Server . Es handelt sich um einen HTTP-Server und Servlet-Container, der statische und dynamische Inhalte bereitstellen kann. Es wird verwendet, wenn eine Maschine-zu-Maschine-Kommunikation erforderlich ist.
Wenn wir den Jetty-Server zur Anwendung hinzufügen möchten, müssen wir den hinzufügen Spring-Boot-Starter-Steg Abhängigkeit in unserer Datei pom.xml.
Erinnern: Stellen Sie bei der Verwendung des Jetty-Servers in der Anwendung sicher, dass der Standard-Tomcat-Server vorhanden ist ausgeschlossen von dem Spring-Boot-Starter-Web. Es vermeidet Konflikte zwischen Servern.
bash if-Anweisung
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-jetty
Wir können das Verhalten des Jetty-Servers auch mithilfe von anpassen application.properties Datei.
Undertow-Server
Spring Boot bietet einen weiteren Server namens Sog . Es ist auch ein eingebetteter Webserver wie Jetty. Es ist in Java geschrieben und wird von JBoss verwaltet und gesponsert. Die Hauptvorteile des Undertow-Servers sind:
- Unterstützt HTTP/2
- HTTP-Upgrade-Unterstützung
- Websocket-Unterstützung
- Bietet Unterstützung für Servlet 4.0
- Flexibel
- Einbettbar
Erinnern: Stellen Sie bei der Verwendung des Undertow-Servers in der Anwendung sicher, dass der Standard-Tomcat-Server vorhanden ist ausgeschlossen von dem Spring-Boot-Starter-Web. Es vermeidet Konflikte zwischen Servern.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-undertow
Wir können das Verhalten des Undertow-Servers auch mithilfe von anpassen application.properties Datei.
String-Format in Java
Spring-Boot-Starter-Web vs. Spring-Boot-Starter-Tomcat
Das Spring-Boot-Starter-Web enthält die Spring-Web-Abhängigkeiten, zu denen auch Spring-Boot-Starter-Tomcat gehört. Das Spring-Boot-Starter-Web enthält Folgendes:
- Federstarter
- Jackson
- Federkern
- Frühling-MVC
- Spring-Boot-Starter-Tomcat
Während Spring-Boot-Starter-Tomcat enthält alles rund um den Tomcat-Server.
- Kern
- Er
- Protokollierung
- WebSocket
Der Starter-Tomcat hat die folgenden Abhängigkeiten:
org.apache.tomcat.embed tomcat-embed-core 8.5.23 compile org.apache.tomcat.embed tomcat-embed-el 8.5.23 compile org.apache.tomcat.embed tomcat-embed-websocket 8.5.23 compile
Wir können auch verwenden Frühling-MVC ohne den eingebetteten Tomcat-Server zu verwenden. Wenn wir dies tun möchten, müssen wir den Tomcat-Server mithilfe von ausschließen Tag, wie im folgenden Code gezeigt.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat
Projekt herunterladen Projekt herunterladen