logo

Spring Boot Starter Web

Der er to vigtige funktioner i spring-boot-starter-web:

  • Den er kompatibel til webudvikling
  • Automatisk konfiguration

Hvis vi vil udvikle en webapplikation, skal vi tilføje følgende afhængighed i filen pom.xml:

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

Starter of Spring web bruger Spring MVC, REST og Tomcat som en standard indlejret server. Den enkelte spring-boot-starter-web-afhængighed trækker transitivt alle afhængigheder i forbindelse med webudvikling ind. Det reducerer også antallet af byggeafhængigheder. Spring-boot-starter-web afhænger transitivt af følgende:

  • 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 indeholder spring-boot-starter-web følgende tomcat-serverafhængighed:

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

Spring-boot-starter-web konfigurerer automatisk følgende ting, der kræves til webudviklingen:

sammenkæde java-streng
  • Dispatcher Servlet
  • Fejlside
  • Web JAR'er til styring af de statiske afhængigheder
  • Indlejret servletbeholder

Spring Boot Embedded Web Server

Hver Spring Boot-applikation inkluderer en indlejret server. Indlejret server er indlejret som en del af en implementeringsbar applikation. Fordelen ved indlejret server er, at vi ikke kræver forudinstalleret server i miljøet. Med Spring Boot er standard indlejret server Tomcat . Spring Boot understøtter også yderligere to indlejrede servere:

    Jetty Server Understrømsserver

Brug af en anden integreret webserver

Til servlet stak applikationer, den spring-boot-starter-web omfatter Tomcat ved at inkludere spring-boot-starter-tomcat , men vi kan bruge fjeder-støvle-starter-bro eller spring-boot-starter-undertow i stedet.

Til reaktiv stak applikationer, den spring-boot-starter-webflux omfatter Reaktor Netty ved at inkludere fjeder-støvle-starter-reaktor-netty , men vi kan bruge spring-boot-starter-tomcat, spring-boot-starter-jetty, eller spring-boot-starter-undertow i stedet.

vijay filmskuespiller

Jetty Server

Spring Boot understøtter også en indlejret server kaldet Jetty Server . Det er en HTTP-server og Servlet-container, der har evnen til at betjene statisk og dynamisk indhold. Det bruges, når maskine til maskine kommunikation er påkrævet.

Hvis vi vil tilføje Jetty-serveren i applikationen, skal vi tilføje fjeder-støvle-starter-bro afhængighed i vores pom.xml-fil.

Husk: Mens du bruger Jetty-serveren i applikationen, skal du sørge for, at standard Tomcat-serveren er udelukket fra spring-boot-starter-web. Det undgår konflikten mellem servere.

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

Vi kan også tilpasse adfærden for Jetty-serveren ved at bruge applikationsegenskaber fil.

Understrømsserver

Spring Boot giver en anden server kaldet Underslæb . Det er også en indlejret webserver som Jetty. Det er skrevet i Java og administreres og sponsoreres af JBoss. De vigtigste fordele ved Undertow server er:

  • Understøtter HTTP/2
  • HTTP-opgraderingsstøtte
  • Websocket support
  • Giver support til Servlet 4.0
  • Fleksibel
  • Kan indlejres

Husk: Mens du bruger Undertow-server i applikationen, skal du sørge for, at standard Tomcat-serveren er udelukket fra spring-boot-starter-web. Det undgår konflikten mellem servere.

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

Vi kan også tilpasse adfærden for Undertow-serveren ved at bruge applikationsegenskaber fil.

javascript til dropdown

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

Spring-boot-starter-web indeholder fjederwebafhængigheder, der inkluderer spring-boot-starter-tomcat. Spring-boot-starter-web indeholder følgende:

  • spring-boot-starter
  • jackson
  • fjederkerne
  • fjeder-mvc
  • spring-boot-starter-tomcat

Mens spring-boot-starter-tomcat indeholder alt relateret til Tomcat-serveren.

  • kerne
  • han
  • logning
  • websocket

Starter-tomcat har følgende afhængigheder:

 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 også bruge fjeder-mvc uden at bruge den indlejrede Tomcat-server. Hvis vi ønsker at gøre det, skal vi udelukke Tomcat-serveren ved at bruge tag, som vist i følgende kode.

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

Download projekt Download projekt