Ci sono due caratteristiche importanti di spring-boot-starter-web:
- È compatibile per lo sviluppo web
- Configurazione automatica
Se vogliamo sviluppare un'applicazione web, dobbiamo aggiungere la seguente dipendenza nel file pom.xml:
org.springframework.boot spring-boot-starter-web 2.2.2.RELEASE
Starter of Spring Web utilizza Spring MVC, REST e Tomcat come server incorporato predefinito. La singola dipendenza spring-boot-starter-web inserisce transitivamente tutte le dipendenze relative allo sviluppo web. Riduce inoltre il conteggio delle dipendenze di compilazione. Spring-boot-starter-web dipende transitivamente da quanto segue:
- 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
Per impostazione predefinita, spring-boot-starter-web contiene la seguente dipendenza del server Tomcat:
org.springframework.boot spring-boot-starter-tomcat 2.0.0.RELEASE compile
Spring-boot-starter-web configura automaticamente le seguenti cose necessarie per lo sviluppo web:
riga contro colonna
- Servlet del dispatcher
- Pagina di errore
- JAR Web per la gestione delle dipendenze statiche
- Contenitore servlet incorporato
Server Web incorporato Spring Boot
Ogni applicazione Spring Boot include un server incorporato. Il server incorporato è incorporato come parte dell'applicazione distribuibile. Il vantaggio del server incorporato è che non è necessario un server preinstallato nell'ambiente. Con Spring Boot, il server incorporato predefinito è Tomcat . Spring Boot supporta anche altri due server incorporati:
Utilizzando un altro server Web incorporato
Per pila di servlet applicazioni, il spring-boot-starter-web include Tomcat includendo spring-boot-starter-tomcat , ma possiamo usare pontile di avvio primaverile O spring-boot-starter-risacca Invece.
Per pila reattiva applicazioni, il spring-boot-starter-webflux include Reattore Netty includendo spring-boot-starter-reattore-netty , ma possiamo usare spring-boot-starter-tomcat, spring-boot-starter-molo, O spring-boot-starter-risacca Invece.
al metodo string in Java
Server del molo
Spring Boot supporta anche un server incorporato chiamato Server del molo . È un server HTTP e un contenitore Servlet che ha la capacità di servire contenuti statici e dinamici. Viene utilizzato quando è richiesta la comunicazione da macchina a macchina.
Se vogliamo aggiungere il server Jetty nell'applicazione, dobbiamo aggiungere il file pontile di avvio primaverile dipendenza nel nostro file pom.xml.
Ricordare: Quando utilizzi il server Jetty nell'applicazione, assicurati che il server Tomcat predefinito sia escluso dal spring-boot-starter-web. Evita il conflitto tra i server.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-jetty
Possiamo anche personalizzare il comportamento del server Jetty utilizzando il file proprietà.applicazione file.
Server della risacca
Spring Boot fornisce un altro server chiamato Risacca . È anche un server Web incorporato come Jetty. È scritto in Java ed è gestito e sponsorizzato da JBoss. I principali vantaggi del server Undertow sono:
- Supporta HTTP/2
- Supporto per l'aggiornamento HTTP
- Supporto WebSocket
- Fornisce il supporto per Servlet 4.0
- Flessibile
- Incorporabile
Ricordare: Durante l'utilizzo del server Undertow nell'applicazione, assicurarsi che il server Tomcat predefinito sia escluso dal spring-boot-starter-web. Evita il conflitto tra i server.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-undertow
Possiamo anche personalizzare il comportamento del server Undertow utilizzando il file proprietà.applicazione file.
gimp eliminando lo sfondo
spring-boot-starter-web rispetto a spring-boot-starter-tomcat
Spring-boot-starter-web contiene le dipendenze Web spring che includono spring-boot-starter-tomcat. Il web spring-boot-starter contiene quanto segue:
- avvio-avvio-primaverile
- Jackson
- nucleo a molla
- primavera-mvc
- spring-boot-starter-tomcat
Mentre il spring-boot-starter-tomcat contiene tutto ciò che riguarda il server Tomcat.
- nucleo
- Lui
- registrazione
- websocket
Lo starter-tomcat ha le seguenti dipendenze:
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
Possiamo anche usare primavera-mvc senza utilizzare il server Tomcat incorporato. Se vogliamo farlo, dobbiamo escludere il server Tomcat utilizzando il file tag, come mostrato nel codice seguente.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat
Scarica progetto Scarica progetto