Maison  >  Article  >  Java  >  Qu’est-ce que le Spring Boot ?

Qu’est-ce que le Spring Boot ?

青灯夜游
青灯夜游original
2022-11-29 11:46:4438679parcourir

Spring Boot est un framework basé sur Spring fourni par l'équipe Pivotal, qui utilise une méthode de configuration spécifique, afin que les développeurs n'aient plus besoin de définir des configurations passe-partout. Spring Boot intègre la plupart des frameworks de développement actuellement populaires. Tout comme Maven intègre tous les packages JAR, Spring Boot intègre presque tous les frameworks, permettant aux développeurs de créer rapidement des projets Spring.

Qu’est-ce que le Spring Boot ?

L'environnement d'exploitation de ce tutoriel : système windows7, version java8, ordinateur DELL G3.

Spring Boot est un nouveau framework basé sur Spring fourni par l'équipe Pivotal, visant à simplifier le processus initial de construction et de développement des applications Spring. Le framework utilise une approche ad hoc de la configuration, éliminant ainsi le besoin pour les développeurs de définir des configurations standard.

La définition donnée par le site officiel de Spring est la suivante : Spring Boot est le point de départ de tous les projets de développement basés sur Spring. Spring Boot intègre la plupart des frameworks de développement actuellement populaires. Tout comme Maven intègre tous les packages JAR, Spring Boot intègre presque tous les frameworks, permettant aux développeurs de créer rapidement des projets Spring.

La philosophie de conception fondamentale de Spring Boot est « la convention plutôt que la configuration ». Basé sur ce principe de conception, Spring Boot simplifie grandement la configuration des projets et des frameworks. Par exemple, lorsque nous utilisons Spring pour développer un projet Web, nous devons configurer web.xml, Spring et MyBatis, etc., et également les intégrer ensemble. Tout deviendra extrêmement simple avec Spring Boot, il utilise un grand nombre de configurations par défaut pour simplifier le processus de configuration de ces fichiers. Il vous suffit d'introduire les Starters correspondants.

Spring Boot peut tout construire. Il est conçu pour utiliser le moins de configuration possible pour démarrer et exécuter des projets Spring le plus rapidement possible.

Contexte de Spring Boot

Au fil des années, avec le développement rapide de Spring et l'ajout continu de nouvelles fonctionnalités, Spring est devenu de plus en plus complexe.

Vous pouvez voir tous les sous-projets et cadres de composants de Spring en visitant le site officiel de Spring. Tant de sous-projets et de composants rendent Spring progressivement encombrant, qui est évidemment incapable de s'adapter à la tendance de développement de l'ère du cloud computing et des microservices. .

C'est ainsi que Spring Boot est né. Spring Boot est construit sur la base de Spring et suit le principe de « convention sur la configuration », évitant la configuration compliquée qui doit être effectuée lors de la création d'un projet ou d'un framework, aidant ainsi les développeurs à utiliser Spring existant plus simplement et plus facilement avec le moins de travail possible. . Tous les composants fonctionnels dans .

Caractéristiques de Spring Boot

Une série de fonctionnalités de Spring Boot facilitent la mise en œuvre de l'architecture de microservices pour de nombreuses piles technologiques actuelles, Spring Boot est la technologie d'implémentation optimale pour l'architecture de microservices dans le domaine Java.

La figure suivante montre certaines fonctionnalités de Spring Boot :

Qu’est-ce que le Spring Boot ?
Figure 1 Fonctionnalités de Sprint Boot

Composants principaux de Spring Boot

Spring Boot fournit officiellement l'encapsulation de nombreux composants fonctionnels de base actuellement populaires, avec une dénomination générale commençant par spring-boot-starter, tel que le composant de tâche planifiée spring-boot-starter-quartz et le moteur de modèle de page spring-boot-starter-thymeleaf, etc.

De plus, en raison de la popularité de Spring Boot, de nombreux middlewares tiers fournissent également des Starters pour les projets Spring Boot conformément aux spécifications Spring Boot, commençant généralement par le nom du composant, comme le package de composants mybatis fourni par MyBatis pour Spring. Démarrez.-spring-boot-starter.

Les composants principaux de Spring Boot sont présentés dans la figure ci-dessous :

Qu’est-ce que le Spring Boot ?
Figure 2 Les composants principaux de Spring Boot

Avantages de Spring Boot

Spring Boot hérite des avantages et des fonctionnalités cohérents de Spring, tout en ajoutant de nouvelles fonctions et fonctionnalités, ce qui rend Spring Boot très facile à démarrer et facilite la programmation.

En résumé, Spring Boot présente les avantages suivants :
  • Suite au principe de « convention plutôt que configuration », l'utilisation de Spring Boot ne nécessite que très peu de configuration ou utilise la configuration par défaut.
  • Utilisez JavaConfig pour éviter les tracas liés à l'utilisation de XML.
  • Fournissez des Starters pour simplifier la configuration de Maven et éviter les conflits de dépendances.
  • Fournit des conteneurs de servlets intégrés et vous pouvez choisir d'intégrer Tomcat, Jetty et d'autres conteneurs sans avoir besoin d'un serveur Web séparé. Cela signifie qu'il n'est plus nécessaire de démarrer Tomcat ou tout autre middleware.
  • Fournit une série de fonctionnalités non fonctionnelles courantes dans les projets, telles que la surveillance de la sécurité, la surveillance des applications, la détection de l'état de santé, etc.
  • Intégration naturelle avec le cloud computing et les microservices.

Du point de vue du développement logiciel, plus le modèle de développement est simple, plus il est populaire et dynamique. Il permet aux développeurs de se concentrer sur la logique métier elle-même et améliore l'efficacité du développement logiciel. Spring Boot vise à simplifier autant que possible le seuil de développement d'applications, facilitant ainsi le développement, les tests et le déploiement d'applications.

Pourquoi apprendre Spring Boot

Ces dernières années, les frameworks techniques les plus populaires de l'écosystème Spring sont Spring Boot et Spring Cloud. À l'heure actuelle, diverses entreprises favorisent la mise en œuvre d'une architecture technologique de microservices, divisant une application complexe en plusieurs petits modules indépendants, les déployant séparément sans interférer les uns avec les autres, obtenant ainsi un couplage lâche, améliorant l'efficacité du développement et réduisant les coûts d'exploitation et de maintenance.

Spring Boot, en tant que base du framework de microservices, est de plus en plus utilisé dans le développement au niveau de l'entreprise. C'est la base de Spring Cloud. Pour apprendre Spring Cloud, vous devez comprendre l'architecture et la philosophie de conception du framework Spring Boot.

Spring Boot est un sous-projet de l'écosystème Spring, utilisé pour développer rapidement et de manière agile une nouvelle génération d'applications basées sur le framework Spring. Dans le même temps, il combine divers frameworks de services et composants tiers actuellement matures (tels que Redis, MongoDB, JPA, RabbitMQ, Quartz, etc.) et les encapsule dans des composants Starters selon l'idée de conception de « convention over configuration". De cette façon, nous pouvons utiliser ces composants dans les applications Spring Boot avec une configuration presque nulle pour réaliser une utilisation prête à l'emploi, nous libérant ainsi d'une configuration compliquée et nous concentrant davantage sur le développement de la logique métier.

Les avantages de Spring Boot peuvent être résumés dans les aspects suivants :
  • Construction rapide : grâce à Spring Initializr, vous pouvez créer rapidement des projets et fournir une multitude de solutions pour faciliter l'intégration rapide de diverses solutions et améliorer l'efficacité du développement.
  • Dépendances simplifiées : fournissez des démarreurs riches, simplifiez la configuration de Maven et évitez les problèmes de compatibilité de version.
  • Déploiement en un clic : les conteneurs de servlets intégrés, tels que Tomcat et Jetty, peuvent être directement empaquetés dans des fichiers JAR exécutables et exécutés indépendamment. Ils prennent en charge Jenkins et Docker pour réaliser facilement une opération et une maintenance automatisées.
  • Surveillance des applications : livré avec un composant de surveillance de l'actionneur pour surveiller facilement l'état des services. Utilisez Spring Boot Admin pour déployer facilement un système de surveillance des applications entièrement fonctionnel.

En général, Spring Boot facilite la création, le codage, la configuration, le déploiement et la surveillance. Spring Boot peut être considéré comme l'un des projets les plus influents de la communauté Spring et même de l'ensemble de la communauté Java ces dernières années.

Lecteurs qui apprennent Spring Boot pour la première fois, n’y pensez pas trop compliqué. Spring Boot n'est pas un nouveau langage ou une nouvelle technologie. Il intègre simplement les frameworks populaires existants, suit le principe de « convention plutôt que de configuration » et fonctionne de manière originale, de sorte que nous n'avons plus besoin de prêter attention à ces choses encombrantes. configuration. Avec ce concept à l’esprit, vous pouvez apprendre Spring Boot dans une ambiance détendue.

Qu'est-ce que "la convention sur la configuration"

Nous savons que l'idée de base de la conception de Spring Boot est "la convention sur la configuration", et tous les Starters fournis par Spring Boot sont implémentés selon cette idée. Alors, qu’est-ce que la « convention plutôt que la configuration » ?

"Convention over configuration", également connu sous le nom de "Programming by Convention", est un paradigme de conception logicielle qui vise à réduire les éléments de configuration requis par les développeurs de logiciels, afin que le logiciel puisse rester simple sans perdre en flexibilité.

Essentiellement, le système, la bibliothèque de classes ou le framework doivent se mettre d'accord sur des valeurs par défaut raisonnables, et les développeurs n'ont qu'à spécifier les parties de l'application qui ne sont pas conformes à l'accord. Par exemple, s'il existe une classe nommée Product dans le modèle, la table correspondante dans la base de données sera nommée product par défaut. Ce n'est que lorsque vous vous écartez de cette convention que vous devez définir une configuration concernant ce nom, par exemple nommer la table. info_produit.

En termes simples, « La convention vaut mieux que la configuration » signifie suivre la convention. Si la configuration convenue de l'outil que vous utilisez répond à vos besoins, vous pouvez alors omettre cette configuration, sinon modifier la configuration appropriée pour obtenir ce que vous attendez.

La « convention sur la configuration » n'est pas un concept nouveau. De nombreux frameworks utilisent le paradigme de conception « la convention sur la configuration », notamment Maven, Spring, Grails, Grok, Apache Wicket, etc.

Spring Boot est le produit des meilleures pratiques de Spring en matière de « convention plutôt que de configuration ». Des fichiers de configuration et configurations par défaut du middleware aux conteneurs intégrés et divers Starters dans l'écosystème Spring, ils suivent tous la philosophie de conception de « convention sur configuration ». C'est précisément grâce à la configuration simplifiée et aux nombreux démarreurs qui rendent Spring Boot simple, facile à utiliser et facile à démarrer. C'est également la mise en œuvre approfondie de l'idée de conception de « convention sur la configuration » qui permet à Spring Boot de réussir. gloire.

La relation entre Spring, Spring Boot et Spring Cloud

Avec le développement continu de Spring, Spring Boot et Spring Cloud, de plus en plus de développeurs rejoignent l'armée Spring. Pour les débutants, ils ne savent peut-être pas grand-chose sur les concepts de Spring, Spring Boot et Spring Cloud et sur la relation entre eux. Examinons-les ensemble.

Spring est un écosystème open source et un maître. Son cœur est l’inversion de contrôle (IoC) et la programmation orientée aspect (AOP). Ce sont les deux fonctions principales d'IoC et d'AOP qui rendent Spring puissant. Spring continue de se développer et de croître sur ces deux fonctions principales, et dispose d'une série de produits matures tels que Spring MVC, et construit enfin un puissant empire écologique Spring.

Spring Boot est développé sur la base de Spring. Il n'est pas destiné à remplacer Spring, mais à simplifier la création, l'exécution, le débogage et le déploiement des applications Spring, facilitant ainsi l'utilisation de Spring par les développeurs. Il combine divers frameworks de services matures et composants tiers, les reconditionne selon l'idée de conception de « convention plutôt que configuration », protège les configurations et implémentations complexes et fournit finalement aux développeurs un ensemble simple et facile à utiliser. composants , une boîte à outils de développement de systèmes distribués facile à déployer et à entretenir.

Spring Cloud est un framework de microservices distribués basé sur Spring Boot. Il utilise les fonctionnalités simples, faciles à utiliser et pratiques de Spring Boot pour simplifier le développement d'une infrastructure système distribuée, telle que la découverte de services, l'enregistrement de services, le centre de configuration. , le bus de messages, les composants de base tels que l'équilibrage de charge, les disjoncteurs et la surveillance des données peuvent tous être démarrés et déployés en un seul clic à l'aide du style de développement Spring Boot.

Nous savons tous que lors de l'utilisation d'une architecture de microservices, le nombre de services sera très important et la gestion sera particulièrement difficile. Spring Cloud est un cadre de gouvernance de microservices distribué, qui peut être considéré comme l'intendant de ces microservices. En tant que grande gouvernante, Spring Cloud doit fournir divers composants et solutions pour gérer et maintenir l'ensemble du système de microservices, tels que la communication entre les services, le disjoncteur, la surveillance, etc. Spring Cloud utilise les caractéristiques de Spring Boot pour intégrer des composants exceptionnels dans le secteur open source et fournit un ensemble de solutions de gouvernance de services dans une architecture de microservices.

Spring Boot joue un rôle de connexion dans Spring Cloud Si vous souhaitez apprendre Spring Cloud, vous devez apprendre Spring Boot. La relation entre les trois est illustrée dans la figure ci-dessous.

Qu’est-ce que le Spring Boot ?

Figure 3 La relation entre Spring, Spring Boot et Spring Cloud

Nous pouvons la comprendre ainsi : c'est précisément grâce aux deux fonctions puissantes d'IoC et d'AOP que le puissant Spring existe et que l'écosystème Spring perdure ; pour développer Spring Boot a été supprimé ; la simplification du développement et du déploiement de Spring Boot a permis à la solution de gouvernance des microservices Spring Cloud d'être pleinement mise en œuvre.

Pour plus de connaissances liées à la programmation, veuillez visiter : Enseignement de la programmation ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn