Il existe deux fonctionnalités importantes de spring-boot-starter-web :
- Il est compatible pour le développement web
- Configuration automatique
Si nous voulons développer une application Web, nous devons ajouter la dépendance suivante dans le fichier pom.xml :
org.springframework.boot spring-boot-starter-web 2.2.2.RELEASE
Starter of Spring Web utilise Spring MVC, REST et Tomcat comme serveur intégré par défaut. La dépendance unique spring-boot-starter-web extrait de manière transitive toutes les dépendances liées au développement Web. Cela réduit également le nombre de dépendances de build. Le spring-boot-starter-web dépend transitivement des éléments suivants :
- 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
Par défaut, le spring-boot-starter-web contient la dépendance de serveur Tomcat suivante :
org.springframework.boot spring-boot-starter-tomcat 2.0.0.RELEASE compile
Le spring-boot-starter-web configure automatiquement les éléments suivants requis pour le développement Web :
démarque avec images
- Servlet de répartiteur
- Page d'erreur
- Web JAR pour gérer les dépendances statiques
- Conteneur de servlets intégré
Serveur Web intégré Spring Boot
Chaque application Spring Boot comprend un serveur intégré. Le serveur intégré est intégré dans le cadre d'une application déployable. L'avantage du serveur intégré est que nous n'avons pas besoin de serveur préinstallé dans l'environnement. Avec Spring Boot, le serveur intégré par défaut est Matou . Spring Boot prend également en charge deux autres serveurs intégrés :
Utilisation d'un autre serveur Web intégré
Pour pile de servlets candidatures, le spring-boot-starter-web comprend Matou en incluant spring-boot-starter-tomcat , mais nous pouvons utiliser jetée-de-démarrage-spring-boot ou printemps-boot-starter-sous-courant plutôt.
Pour pile réactive candidatures, le spring-boot-starter-webflux comprend Réacteur Netty en incluant spring-boot-starter-reactor-netty , mais nous pouvons utiliser spring-boot-starter-tomcat, spring-boot-starter-jetty, ou printemps-boot-starter-sous-courant plutôt.
système de fichiers sous Linux
Serveur de jetée
Spring Boot prend également en charge un serveur intégré appelé Serveur de jetée . Il s'agit d'un serveur HTTP et d'un conteneur de servlets capables de servir du contenu statique et dynamique. Il est utilisé lorsqu’une communication machine à machine est requise.
Si nous voulons ajouter le serveur Jetty dans l'application, nous devons ajouter le jetée-de-démarrage-spring-boot dépendance dans notre fichier pom.xml.
Souviens-toi: Lorsque vous utilisez le serveur Jetty dans l'application, assurez-vous que le serveur Tomcat par défaut est exclu du spring-boot-starter-web. Cela évite les conflits entre les serveurs.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-jetty
Nous pouvons également personnaliser le comportement du serveur Jetty en utilisant le application.propriétés déposer.
Serveur Undertow
Spring Boot fournit un autre serveur appelé Reflux . C'est aussi un serveur web embarqué comme Jetty. Il est écrit en Java et géré et sponsorisé par JBoss. Les principaux avantages du serveur Undertow sont :
- Prend en charge HTTP/2
- Prise en charge de la mise à niveau HTTP
- Prise en charge des Websockets
- Fournit la prise en charge de Servlet 4.0
- Flexible
- Intégrable
Souviens-toi: Lorsque vous utilisez le serveur Undertow dans l'application, assurez-vous que le serveur Tomcat par défaut est exclu du spring-boot-starter-web. Cela évite les conflits entre les serveurs.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat org.springframework.boot spring-boot-starter-undertow
Nous pouvons également personnaliser le comportement du serveur Undertow en utilisant le application.propriétés déposer.
date et heure dactylographiées
spring-boot-starter-web contre spring-boot-starter-tomcat
Le spring-boot-starter-web contient les dépendances Web Spring qui incluent spring-boot-starter-tomcat. Le spring-boot-starter-web contient les éléments suivants :
- démarreur à ressort
- jackson
- noyau à ressort
- printemps-mvc
- spring-boot-starter-tomcat
Tandis que le spring-boot-starter-tomcat contient tout ce qui concerne le serveur Tomcat.
- cœur
- il
- enregistrement
- prise Web
Le starter-tomcat a les dépendances suivantes :
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
Nous pouvons également utiliser printemps-mvc sans utiliser le serveur Tomcat intégré. Si nous voulons le faire, nous devons exclure le serveur Tomcat en utilisant le balise, comme indiqué dans le code suivant.
org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-tomcat
Télécharger le projet Télécharger le projet