Spring Boot - Introduction

Spring Boot est un framework Java open source utilisé pour créer un micro service. Il est développé par Pivotal Team et est utilisé pour créer des applications de ressort autonomes et prêtes pour la production. Ce chapitre vous donnera une introduction à Spring Boot et vous familiarisera avec ses concepts de base.

Qu'est-ce que Micro Service?

Micro Service est une architecture qui permet aux développeurs de développer et de déployer des services de manière indépendante. Chaque service en cours d'exécution a son propre processus, ce qui permet d'obtenir le modèle léger pour prendre en charge les applications métier.

Avantages

Micro services offre les avantages suivants à ses développeurs -

  • Déploiement facile
  • Évolutivité simple
  • Compatible avec les conteneurs
  • Configuration minimale
  • Moins de temps de production

Qu'est-ce que Spring Boot?

Spring Boot fournit une bonne plate-forme aux développeurs Java pour développer une application Spring autonome et de qualité production que vous pouvez just run. Vous pouvez commencer avec des configurations minimales sans avoir besoin d'une configuration complète de Spring.

Avantages

Spring Boot offre les avantages suivants à ses développeurs -

  • Facile à comprendre et à développer des applications de ressort
  • Augmente la productivité
  • Réduit le temps de développement

Buts

Spring Boot est conçu avec les objectifs suivants -

  • Pour éviter une configuration XML complexe au printemps
  • Pour développer plus facilement des applications Spring prêtes pour la production
  • Pour réduire le temps de développement et exécuter l'application indépendamment
  • Offrez un moyen plus simple de démarrer avec l'application

Pourquoi Spring Boot?

Vous pouvez choisir Spring Boot en raison des fonctionnalités et des avantages qu'il offre, comme indiqué ici -

  • Il offre un moyen flexible de configurer les Java Beans, les configurations XML et les transactions de base de données.

  • Il fournit un traitement par lots puissant et gère les points de terminaison REST.

  • Dans Spring Boot, tout est configuré automatiquement; aucune configuration manuelle n'est nécessaire.

  • Il offre une application de ressort basée sur l'annotation

  • Facilite la gestion des dépendances

  • Il comprend un conteneur de servlet intégré

Comment ça marche?

Spring Boot configure automatiquement votre application en fonction des dépendances que vous avez ajoutées au projet en utilisant @EnableAutoConfigurationannotation. Par exemple, si la base de données MySQL se trouve sur votre chemin de classe, mais que vous n'avez configuré aucune connexion à la base de données, Spring Boot configure automatiquement une base de données en mémoire.

Le point d'entrée de l'application Spring Boot est la classe contient @SpringBootApplication l'annotation et la méthode principale.

Spring Boot analyse automatiquement tous les composants inclus dans le projet en utilisant @ComponentScan annotation.

Démarreurs Spring Boot

La gestion de la gestion des dépendances est une tâche difficile pour les grands projets. Spring Boot résout ce problème en fournissant un ensemble de dépendances pour la commodité des développeurs.

Par exemple, si vous souhaitez utiliser Spring et JPA pour l'accès à la base de données, il suffit d'inclure spring-boot-starter-data-jpa dépendance dans votre projet.

Notez que tous les démarreurs Spring Boot suivent le même modèle de dénomination spring-boot-starter- *, où * indique qu'il s'agit d'un type d'application.

Exemples

Regardez les démarreurs Spring Boot suivants expliqués ci-dessous pour une meilleure compréhension -

Spring Boot Starter Actuator dependencyest utilisé pour surveiller et gérer votre application. Son code est indiqué ci-dessous -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

Spring Boot Starter Security dependencyest utilisé pour Spring Security. Son code est indiqué ci-dessous -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
</dependency>

Spring Boot Starter web dependencyest utilisé pour écrire un Rest Endpoints. Son code est indiqué ci-dessous -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-web</artifactId>
</dependency>

Spring Boot Starter Thyme Leaf dependencyest utilisé pour créer une application Web. Son code est indiqué ci-dessous -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>

Spring Boot Starter Test dependencyest utilisé pour écrire des cas de test. Son code est indiqué ci-dessous -

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-test</artifactId>
</dependency>

Configuration automatique

La configuration automatique de Spring Boot configure automatiquement votre application Spring en fonction des dépendances JAR que vous avez ajoutées au projet. Par exemple, si la base de données MySQL se trouve sur votre chemin de classe, mais que vous n'avez configuré aucune connexion à la base de données, Spring Boot configure automatiquement une base de données en mémoire.

Pour cela, vous devez ajouter @EnableAutoConfiguration annotation ou @SpringBootApplicationannotation à votre fichier de classe principal. Ensuite, votre application Spring Boot sera automatiquement configurée.

Observez le code suivant pour une meilleure compréhension -

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;

@EnableAutoConfiguration
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}

Application Spring Boot

Le point d'entrée de l'application Spring Boot est la classe contient @SpringBootApplicationannotation. Cette classe doit avoir la méthode principale pour exécuter l'application Spring Boot.@SpringBootApplication L'annotation inclut la configuration automatique, l'analyse des composants et la configuration de Spring Boot.

Si vous avez ajouté @SpringBootApplication annotation à la classe, vous n'avez pas besoin d'ajouter le @EnableAutoConfiguration, @ComponentScan et @SpringBootConfigurationannotation. le@SpringBootApplication l'annotation inclut toutes les autres annotations.

Observez le code suivant pour une meilleure compréhension -

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}

Analyse des composants

L'application Spring Boot analyse tous les beans et les déclarations de package lorsque l'application s'initialise. Vous devez ajouter le@ComponentScan annotation pour votre fichier de classe pour analyser vos composants ajoutés dans votre projet.

Observez le code suivant pour une meilleure compréhension -

import org.springframework.boot.SpringApplication;
import org.springframework.context.annotation.ComponentScan;

@ComponentScan
public class DemoApplication {
   public static void main(String[] args) {
      SpringApplication.run(DemoApplication.class, args);
   }
}