Spring Boot Flashcards

1
Q

Comment fonctionne l’auto-configuration ?

A

Spring Boot étend la configuration automatique de Spring Core en faisant des hypothèses raisonnables sur la configuration désirée sur la base du classpath, des variables d’environnement, etc…

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

A quoi sert spring-boot-parent ?

A

C’est le projet parent (au sens maven) de tout projet Spring Boot.

Il fixe les versions des dépendances qui seront utilisées pour certaines librairies couramment utilisées.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Que sont les dépendances de type spring-boot-starter ?

A

Ce sont des dépendances qui ne contiennent pas de code en elles-mêmes, mais qui tirent transitivement d’autres dépendances.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Que fait @SpringBootApplication ?

A

Elle combine 3 annotations:

  • @SpringBootConfiguration
  • @EnableAutoConfiguration
  • @ComponentScan
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Quelle est l’utilité des devtools ?

A
  • Redémarrage automatique intelligent de l’application (java, fichiers de propriétés)
  • Rafraichissement automatique intelligent du navigateur (templates, js, css, etc…)
  • Désactivation automatique du cache de template
  • Console H2 le cas échéant
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Comment fonctionnent les DevTools ?

A

L”application est chargée dans 2 class loaders séparés:

  • Un pour le code de l’application elle-même (qui change fréquemment)
  • Un pour les dépendances (qui changent rarement)

Quand un changement est détecté, DevTools recharge uniquement contenant le code de l’application et redémarre le contexte Spring.

Ceci implique qu’en cas de changement de dépendances, il faut effectuer un redémarrage manuel.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Comment initialiser une base de données avec Spring Boot ?

A

Placer dans src/main/resources les fichiers:

  • schema.sql pour la structure
  • data.sql pour le contenu
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Comment affecter un fichier de propriétés à un profil particulier ?

A
  • En le nommant application-{profile name}.properties (ou .yml)
  • Pour les fichiers YML uniquement, en dédiant une section à ce profil
How well did you know this?
1
Not at all
2
3
4
5
Perfectly