logo

Web de démarrage Spring Boot

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 :

    Serveur de jetée Serveur Undertow

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