logo

Spring Boot Starter Web

Det finns två viktiga funktioner i spring-boot-starter-web:

  • Den är kompatibel för webbutveckling
  • Automatisk konfiguration

Om vi ​​vill utveckla en webbapplikation måste vi lägga till följande beroende i filen pom.xml:

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

Starter of Spring web använder Spring MVC, REST och Tomcat som en inbäddad standardserver. Det enda fjäder-boot-starter-webberoendet drar transitivt in alla beroenden relaterade till webbutveckling. Det minskar också antalet byggberoende. Spring-boot-starter-webben beror transitivt på följande:

  • 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

Som standard innehåller spring-boot-starter-web följande tomcat-serverberoende:

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

Spring-boot-starter-web konfigurerar automatiskt följande saker som krävs för webbutvecklingen:

sql ddl-kommandon
  • Dispatcher Servlet
  • Felsida
  • Web JAR för att hantera statiska beroenden
  • Inbäddad servletbehållare

Spring Boot Embedded Web Server

Varje Spring Boot-applikation innehåller en inbäddad server. Den inbäddade servern är inbäddad som en del av en implementeringsbar applikation. Fördelen med inbäddad server är att vi inte kräver förinstallerad server i miljön. Med Spring Boot är den inbäddade standardservern Hankatt . Spring Boot stöder även ytterligare två inbäddade servrar:

    Jetty Server Underströmsserver

Använder en annan inbäddad webbserver

För servletstack applikationer, den spring-boot-starter-web inkluderar Hankatt genom att inkludera spring-boot-starter-tomcat , men vi kan använda fjäder-boot-starter-brygga eller fjäder-boot-starter-undertow istället.

För reaktiv stack applikationer, den spring-boot-starter-webflux inkluderar Reaktor Netty genom att inkludera fjäder-boot-starter-reaktor-nätty , men vi kan använda spring-boot-starter-tomcat, spring-boot-starter-jetty, eller fjäder-boot-starter-undertow istället.

uppgiftshanteraren linux

Jetty Server

Spring Boot stöder också en inbäddad server som heter Jetty Server . Det är en HTTP-server och Servlet-behållare som har förmågan att servera statiskt och dynamiskt innehåll. Den används när maskin-till-maskin-kommunikation krävs.

Om vi ​​vill lägga till Jetty-servern i applikationen måste vi lägga till fjäder-boot-starter-brygga beroende i vår pom.xml-fil.

Kom ihåg: När du använder Jetty-servern i applikationen, se till att Tomcat-servern är standard utesluten från spring-boot-starter-web. Det undviker konflikten mellan servrar.

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

Vi kan också anpassa beteendet hos Jetty-servern genom att använda applikationsegenskaper fil.

Underströmsserver

Spring Boot tillhandahåller en annan server som kallas Understräcka . Det är också en inbäddad webbserver som Jetty. Det är skrivet i Java och hanteras och sponsras av JBoss. De främsta fördelarna med Undertow-servern är:

  • Stöder HTTP/2
  • HTTP-uppgraderingsstöd
  • Websocket Support
  • Ger stöd för Servlet 4.0
  • Flexibel
  • Inbäddningsbar

Kom ihåg: När du använder Undertow-servern i applikationen, se till att Tomcat-servern är standard utesluten från spring-boot-starter-web. Det undviker konflikten mellan servrar.

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

Vi kan också anpassa beteendet för Undertow-servern genom att använda applikationsegenskaper fil.

pandor och numpy

spring-boot-starter-web vs. spring-boot-starter-tomcat

Spring-boot-starter-web innehåller fjäderwebbenen som inkluderar spring-boot-starter-tomcat. Spring-boot-starter-webben innehåller följande:

  • fjäder-boot-starter
  • jackson
  • fjäderkärna
  • fjäder-mvc
  • spring-boot-starter-tomcat

Medan spring-boot-starter-tomcat innehåller allt relaterat till Tomcat-servern.

  • kärna
  • han
  • skogsavverkning
  • websocket

Starter-tomcat har följande beroenden:

 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 

Vi kan också använda fjäder-mvc utan att använda den inbäddade Tomcat-servern. Om vi ​​vill göra det måste vi utesluta Tomcat-servern genom att använda taggen, som visas i följande kod.

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

Ladda ner projekt Ladda ner projekt