logo

Spring Boot Starterweb

Er zijn twee belangrijke kenmerken van spring-boot-starter-web:

  • Het is compatibel voor webontwikkeling
  • Automatische configuratie

Als we een webapplicatie willen ontwikkelen, moeten we de volgende afhankelijkheid toevoegen aan het pom.xml-bestand:

 org.springframework.boot spring-boot-starter-web 2.2.2.RELEASE 

Starter van Spring web gebruikt Spring MVC, REST en Tomcat als standaard embedded server. De enkele spring-boot-starter-web-afhankelijkheid haalt transitief alle afhankelijkheden op die verband houden met webontwikkeling. Het vermindert ook het aantal build-afhankelijkheid. Het spring-boot-starter-web is transitief afhankelijk van het volgende:

  • org.springframework.boot:spring-boot-starter
  • org.springframework.boot:spring-boot-starter-tomcat
  • org.springframework.boot:spring-boot-starter-validatie
  • com.fasterxml.jackson.core:jackson-databind
  • org.springframework:spring-web
  • org.springframework:spring-webmvc

Standaard bevat het spring-boot-starter-web de volgende tomcat-serverafhankelijkheid:

 org.springframework.boot spring-boot-starter-tomcat 2.0.0.RELEASE compile 

De spring-boot-starter-web configureert automatisch de volgende dingen die nodig zijn voor de webontwikkeling:

verschil tussen tijger en leeuw
  • Dispatcher-servlet
  • Foutpagina
  • Web-JAR's voor het beheren van de statische afhankelijkheden
  • Ingebouwde servletcontainer

Spring Boot geïntegreerde webserver

Elke Spring Boot-applicatie bevat een ingebouwde server. De ingebedde server is ingebed als onderdeel van een inzetbare applicatie. Het voordeel van een embedded server is dat we geen vooraf geïnstalleerde server in de omgeving nodig hebben. Met Spring Boot is de standaard ingebedde server Kater . Spring Boot ondersteunt ook nog twee embedded servers:

    Jetty-server Onderstroom-server

Een andere ingebouwde webserver gebruiken

Voor servet stapel toepassingen, de spring-boot-starter-web omvat Kater door op te nemen spring-boot-starter-kater , maar we kunnen het gebruiken spring-boot-startsteiger of spring-boot-starter-onderstroom in plaats van.

Voor reactieve stapel toepassingen, de spring-boot-starter-webflux omvat Reactor Netty door op te nemen spring-boot-starter-reactor-netty , maar we kunnen het gebruiken spring-boot-starter-kater, spring-boot-starter-steiger, of spring-boot-starter-onderstroom in plaats van.

string naar int-converter

Jetty-server

De Spring Boot ondersteunt ook een embedded server genaamd Jetty-server . Het is een HTTP-server en Servlet-container die statische en dynamische inhoud kan leveren. Het wordt gebruikt wanneer machine-to-machine-communicatie vereist is.

Als we de Jetty-server aan de applicatie willen toevoegen, moeten we de spring-boot-startsteiger afhankelijkheid in ons pom.xml-bestand.

Herinneren: Zorg er bij het gebruik van de Jetty-server in de applicatie voor dat de standaard Tomcat-server is uitgesloten van de spring-boot-starter-web. Het vermijdt conflicten tussen servers.

 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-jetty 

We kunnen het gedrag van de Jetty-server ook aanpassen door gebruik te maken van de applicatie.eigenschappen bestand.

Onderstroom-server

Spring Boot biedt een andere server genaamd Onderstroom . Het is ook een embedded webserver zoals Jetty. Het is geschreven in Java en wordt beheerd en gesponsord door JBoss. De belangrijkste voordelen van de Undertow-server zijn:

  • Ondersteunt HTTP/2
  • Ondersteuning voor HTTP-upgrades
  • Websocket-ondersteuning
  • Biedt ondersteuning voor Servlet 4.0
  • Flexibel
  • Insluitbaar

Herinneren: Zorg er bij het gebruik van de Undertow-server in de applicatie voor dat de standaard Tomcat-server is uitgesloten van de spring-boot-starter-web. Het vermijdt conflicten tussen servers.

 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-undertow 

We kunnen het gedrag van de Undertow-server ook aanpassen door gebruik te maken van de applicatie.eigenschappen bestand.

gimp watermerk verwijderen

spring-boot-starter-web versus spring-boot-starter-tomcat

Het spring-boot-starter-web bevat de spring-webafhankelijkheden, waaronder spring-boot-starter-tomcat. Het spring-boot-starter-web bevat het volgende:

  • spring-boot-starter
  • Jackson
  • veer-kern
  • lente-mvc
  • spring-boot-starter-kater

Terwijl de spring-boot-starter-kater bevat alles met betrekking tot Tomcat-server.

  • kern
  • Hij
  • loggen
  • webaansluiting

De starter-kater heeft de volgende afhankelijkheden:

 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 

Wij kunnen ook gebruiken lente-mvc zonder gebruik te maken van de ingebouwde Tomcat-server. Als we dit willen doen, moeten we de Tomcat-server uitsluiten met behulp van de tag, zoals weergegeven in de volgende code.

 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat 

Project downloaden Project downloaden