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:
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