0% ont trouvé ce document utile (0 vote)
78 vues6 pages

Spring Boot

Spring Boot est un module du framework Spring qui facilite le développement d'applications autonomes avec peu de configuration. Il offre des fonctionnalités telles que l'intégration de serveurs, la gestion automatique des dépendances et des propriétés configurables. Les annotations comme @RestController et @Autowired permettent une gestion simplifiée des composants et des dépendances dans les applications Spring Boot.

Transféré par

mohamedhedibenkhoudja
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
78 vues6 pages

Spring Boot

Spring Boot est un module du framework Spring qui facilite le développement d'applications autonomes avec peu de configuration. Il offre des fonctionnalités telles que l'intégration de serveurs, la gestion automatique des dépendances et des propriétés configurables. Les annotations comme @RestController et @Autowired permettent une gestion simplifiée des composants et des dépendances dans les applications Spring Boot.

Transféré par

mohamedhedibenkhoudja
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

1) Qu'est-ce que Spring Boot?

Spring Boot est un module Spring qui fournit la fonctionnalité RAD (Rapid Application Development) au
framework Spring.

Il est utilisé pour créer une application autonome à base de spring que vous pouvez simplement exécuter
car elle nécessite très peu de configuration spring.

Pour plus d'informations cliquez ici.

2) Quels sont les avantages de Spring Boot?

o Créez des applications Spring autonomes pouvant être démarrées à l'aide de java -jar.
o Intégrez directement Tomcat, Jetty ou Undertow. Vous n'avez pas besoin de déployer des fichiers
WAR.
o Il fournit des POM "de démarrage" pour simplifier la configuration de votre Maven.
o Il configure automatiquement Spring chaque fois que possible.

3) Quelles sont les fonctionnalités(feature) de Spring Boot?

o Web Development
o SpringApplication
o Application events and listeners
o Admin features

4) Comment créer une application Spring Boot avec Maven?


Il existe plusieurs approches pour créer un projet Spring Boot. Nous pouvons utiliser l’une des approches
suivantes pour créer une application.

o Spring Maven Project


o Spring Starter Project Wizard
o Spring Initializr
o Spring Boot CLI

5) Comment créer un projet Spring Boot en utilisant Spring Initializer?


C'est un outil Web fourni par Spring sur le site officiel. Vous pouvez créer un projet Spring Boot en
fournissant des détails sur le projet.

6) Comment créer un projet Spring Boot à l’aide de la CLI de démarrage?


C'est un outil que vous pouvez télécharger sur le site officiel de Spring Framework. Ici, nous expliquons
les étapes.

7) Comment créer une simple application Spring Boot?


Pour créer une application. Nous utilisons l'EDI STS (Spring Tool Suite) et il comprend les différentes
étapes expliquant les étapes.

8) Que sont les annotations de démarrage de Spring?


@RestController est une annotation de stéréotype. Il ajoute des annotations @Controller et
@ResponseBody à la classe. Nous devons importer le package [Link]
dans notre fichier afin de le mettre en œuvre.

9) Qu'est-ce que la gestion des dépendances Spring Boot?


Spring Boot gère automatiquement les dépendances et la configuration. Vous n'avez pas besoin de
spécifier de version pour ces dépendances.

Spring Boot met automatiquement à niveau toutes les dépendances lors de la mise à niveau de Spring
Boot.

10) Quelles sont les propriétés du démarrage de Spring?


Spring Boot fournit diverses propriétés pouvant être spécifiées dans le fichier [Link]
de notre projet . Ces propriétés ont des valeurs par défaut et vous pouvez les définir dans le fichier de
propriétés. Les propriétés permettent de définir des valeurs telles que: numéro de port du serveur,
configuration de la connexion à la base de données, etc.

11) Quels sont les Spring Boot Starters?


Les démarreurs sont un ensemble de descripteurs de dépendance pratiques que nous pouvons inclure
dans notre application.

Spring Boot fournit des démarreurs intégrés qui facilitent et accélèrent le développement. Par exemple, si
nous souhaitons commencer à utiliser Spring et JPA pour l’accès à la base de données, il suffit d’inclure
la dépendance spring-boot-starter-data-jpa dans votre projet.

12) Qu'est-ce que Spring Boot Actuator?


Spring Boot fournit un actionneur pour surveiller et gérer notre application. Actionneur est un outil doté
de points de terminaison HTTP. Lorsque l'application est mise en production, vous pouvez choisir de gérer
et de surveiller votre application à l'aide de points de terminaison HTTP.

13) Qu'est-ce que Thymeleaf?


Il s'agit d'un moteur de modèle(template) Java côté serveur pour une application Web. Son objectif
principal est d'apporter des modèles naturels élégants à votre application Web.

Il peut être intégré à Spring Framework et est idéal pour les applications Web Java HTML5.

14) Comment utiliser thymeleaf?


Pour utiliser Thymeleaf, nous devons l’ajouter dans notre fichier [Link] comme ceci:

1. < dépendance >


2. < groupId > [Link] </ groupId >
3. < artifactId > thymeleaf </ artifactId >
4. </ dependency >

15) Comment connecter Spring Boot à la base de données à l'aide de JPA?


Spring Boot permet au démarreur spring-boot-starter-data-jpa de connecter efficacement
l'application Spring à une base de données relationnelle. Vous pouvez l'utiliser dans le fichier de projet
POM (Project Object Model).
16) Comment connecter une application Spring Boot à une base de
données utilisant JDBC?
Spring Boot fournit un démarreur et des bibliothèques pour la connexion à notre application avec
JDBC. Ici, nous créons une application qui se connecte à la base de données Mysql.

17) Qu'est-ce que l'annotation @RestController dans Spring Boot?


@RestController est une annotation de stéréotype. Il ajoute des annotations @Controller et
@ResponseBody à la classe. Nous devons importer le package [Link]
dans notre fichier afin de le mettre en œuvre.

18) Qu'est-ce que l'annotation @RequestMapping dans Spring Boot?


L' annotation @RequestMapping est utilisée pour fournir des informations de routage. Il indique au
Spring que toute requête HTTP doit être mappée à la méthode correspondante. Nous devons importer le
package [Link] dans notre fichier.

Pour plus d'informations cliquez ici.

19) Comment créer une application Spring Boot à l'aide de l'assistant de


projet Spring Starter?
Il existe un autre moyen de créer un projet Spring Boot dans STS (Spring Tool Suite). Créer un projet en
utilisant IDE est toujours un moyen pratique. Suivez les étapes suivantes pour créer une application de
démarrage Spring à l’aide de cet assistant.

20) Spring Vs Spring Boot?


Spring est un framework d'application Web basé sur Java. Il fournit des outils et des bibliothèques pour
créer une application Web complète et personnalisée.

Wheras Spring Boot est un module de spring utilisé pour créer un projet d'application de spring pouvant
simplement être exécuté.

LES ANNOTATIONS SPRINGSpring – Injection de


dépendance (@Autowired, @Qualifier & @Ressource)

Hello les amis, dans ce tuto nous allons voir comment faire l’injection de dépendance en utilisant
l’annotation @Autowired, pour plus de detail sur le DI(Injection de dépendance) je vous invite mes amis d’aller
voir ce lien.

1 – @Autowired :

C’est une annotation qui nous permet de faire l’injection de dépendances entre les beans de l’application
(Spring va tout faire), il suffit juste d’annoter un constructeur ou une méthode avec cette dernière. et le conteneur
Spring va faire la suite(La creation du bean, le chercher et l’injecter automatiquement…).

 Pour bien comprendre le principe je vous propose de faire un petit exemple :


On va utiliser le principe du couplage faible “ne pas avoir beacoup de dépendance entre les classes de votre
applicaion ce qui rend la maintenance de ce tte dernière facile”, donc on va créer une classe dao et une interface
idao puis une classe metier qui va accéder à la partie dao en utilisant que l’interface :

public interface IDao{

@Repository
2
3 public class Dao implemets IDao {
4 // Ajouter du code
5}

Donc maintenant, on va créer la classe Metier et utiliser le principe de DI :

@Service
public class Metier{
4
5 @Autowired
6 private IDao dao;
}

Donc, mtn une fois le conteneur Spring se lance, il va crée l’instance de la classe Dao et la classe
Metier(Principe Ioc), et il va faire l’injection de dépendance (injecter l’objet créeé de la classe Dao dans la
propriété de l’interface IDao qui existe dans la classe Metier)

 Quelques remarques à retenir :

la valeur par défaut de l’annotation @Autowired est true, ca veut dire qu’il faut obligatoirement initialiser le bean
à injecter, si le Conteneur Spring ne trouve pas le bean une exception de type BeanCreationException est levée,
on peut bien sur modifier cette annotation en mettant la valeur à false comme suit :

@Autowired(required=false).

Le conteneur spring va lever des exceptions de type BeanCreationException dans le deux cas suivant :

– Si @Autowired ne trouve aucun bean correspondant au type de l’entité annoté sauf si l’attribut requierd est
false.

– Si @Autowired trouve plusieurs beans correspondants au type annoté et que l’élément n’est pas un tableau ou
collection.

2 – @Qualifier :

A côté de l’annotation @Autowired, on peut utiliser d’autres annotations pour nous faciliter la vie :D, nous allons
voir les annotations @Qualifier & @Ressource

@Qualifier : c’est une annotation utilisée lorsqu’on a plusieurs classes qui implémentent une interface, et on
veux faire l’injection des dépendances en utilisant cet interface.

 Un petit exemple pour bien comprendre :

Dans une seule application , on a une interface IDao qui sera implémentée par 3 classes : DaoJdbc,
DaoHibernate, DaoSpringData.

public interface IDao {


2
3
4}

La déclaration des 3 classes :

@Repository
2
3
@Qualifier("jdbc")
4
5
public class DaoJdbc implemets IDao {
6
// Ajouter du code
7
}
8
9
10
@Qualifier("hibernate")
11
12
public class DaoJdbc implemets IDao {
13
// Ajouter du code
14
}
15
16
17
@Qualifier("springData")
18
19
public class DaoJdbc implemets IDao {
20
// Ajouter du code
21
}

Dans la partie Métier on a une classe qui va utiliser la partie Dao(pour respecter la principe du couplage faible on
va utiliser l’interface IDao) :

public class Metier {


3
4
@Autowired
5
6
@Qualifier("jdbc")
7
8
private IDao dao; //
9
10
}

Donc puisqu’on 3 classes qui implémentent cette interface, on doit utiliser un truc pour spécifier à la partie métier
quelle classe doit utiliser (utilisation de l’annotation Qualifier).

@Qualifier est utilisée donc pour montrer au Conteneur Spring la classe à injecter (dans le cas de plusieurs
classes).

2 – @Resource:

L’annotation @Resource : on peut dire qu’elle s’agit d’une fusion entre l’annotation @Autowired et @Qualifier,
ci-dessous un petit exemple :

On va utiliser l’exemple précèdent, ci-dessous la déclaration des 3 classes :

7 @Repository
8
9 @Qualifier("jdbc")
10
11 public class DaoJdbc implemets IDao {
12 // Ajouter du code
13 }
14
15
16 @Qualifier("hibernate")
17
18 public class DaoJdbc implemets IDao {
19 // Ajouter du code
}

20 @Qualifier("springData")
21
public class DaoJdbc implemets IDao {
// Ajouter du code
}

Vous avez remarqué qu’il n’ y a aucun changement au niveau de la première partie, par contre dans la partie
Métier on a une classe qui va utiliser la partie Dao(pour respecter la principe du couplage faible on va utiliser
l’interface IDao) :

public class Métier {

5
6 @resource(name="jdbc")
7
8 private IDao dao; //
9

Donc comme vous voyez au lieu d’utiliser deux annotation @Autowired et @Qualifier on utilise @Resource

Vous aimerez peut-être aussi