CHAPITRE 1 : INTRODUCTION A SPRING BOOT

Spring Boot est le framework le plus utilise pour developper des applications Java cote serveur. Avant d'ecrire du code, comprenons a quel probleme il repond.

1. Le probleme que resout Spring Boot

Developper une application Java d'entreprise demandait autrefois un travail de configuration considerable : fichiers XML a rallonge, serveur a installer et parametrer, bibliotheques a assembler une par une en verifiant leur compatibilite. On passait parfois une journee entiere avant d'afficher la moindre page.

Spring Boot renverse cette logique : tout fonctionne par defaut, et vous ne configurez que ce qui s'ecarte de l'ordinaire.

2. Spring ou Spring Boot ?

Spring FrameworkSpring Boot
NatureLa bibliotheque de baseUne surcouche de Spring
ConfigurationManuelle, abondanteAutomatique
ServeurA installer separementIntegre a l'application
DemarrageLongQuelques minutes

Spring Boot n'est pas un concurrent de Spring : il s'appuie dessus. Tout ce que vous apprendrez ici reste du Spring.

3. Les trois idees fondatrices

L'auto-configuration

Spring Boot inspecte les bibliotheques presentes dans votre projet et en deduit la configuration. Vous ajoutez une base de donnees ? Il configure la connexion. Vous ajoutez le web ? Il demarre un serveur.

Les starters

Un starter est un paquet de dependances coherentes. Plutot que de declarer quinze bibliotheques en verifiant leurs versions, vous en declarez une seule.

spring-boot-starter-web        <!-- tout le necessaire pour une API REST -->
spring-boot-starter-data-jpa   <!-- acces aux bases de donnees -->
spring-boot-starter-security   <!-- authentification -->
spring-boot-starter-test       <!-- tests -->

Le serveur embarque

L'application contient son propre serveur (Tomcat par defaut). Il n'y a rien a installer : on lance le programme, et le serveur demarre avec lui.

4. Un exemple minimal

Voici une application Spring Boot complete et fonctionnelle :

@SpringBootApplication
public class MonAppliApplication {

    public static void main(String[] args) {
        SpringApplication.run(MonAppliApplication.class, args);
    }
}
@RestController
public class BonjourController {

    @GetMapping("/bonjour")
    public String bonjour() {
        return "Bonjour depuis Spring Boot";
    }
}

Une quinzaine de lignes, et vous disposez d'un serveur web qui repond sur http://localhost:8080/bonjour.

5. A quoi sert Spring Boot concretement ?

  • Des API REST consommees par un site, une application mobile ou un front Angular
  • Des applications web completes avec pages generees cote serveur
  • Des microservices : de petites applications independantes qui communiquent
  • Des traitements par lots : imports, exports, calculs planifies

6. Ce qu'il faut savoir avant de commencer

  • Java : classes, objets, interfaces, collections, generiques
  • Les annotations : leur syntaxe @Nom et leur role
  • Les bases de donnees : notions de table et de requete SQL
  • HTTP : les methodes GET, POST, PUT, DELETE

Si les annotations vous semblent obscures, retenez pour l'instant ceci : une annotation est une etiquette posee sur une classe ou une methode, qui indique a Spring comment la traiter. Tout le cours repose la-dessus.

A retenir

  • Spring Boot est une surcouche de Spring qui supprime la configuration manuelle
  • L'auto-configuration deduit le parametrage des bibliotheques presentes
  • Un starter regroupe des dependances coherentes
  • Le serveur est embarque : rien a installer

Exercices d'application

Exercice 1. Observer une APIOuvrez une API publique dans votre navigateur (par exemple https://api.github.com/users/joelyk). Decrivez ce que vous recevez et sous quel format.
Exercice 2. Reconnaitre les startersPour chacun de ces besoins, dites quel starter utiliser : exposer une API REST, se connecter a MySQL, proteger des pages par mot de passe.
Exercice 3. Faire le point sur JavaListez ce que vous savez faire en Java : creer une classe, implementer une interface, utiliser une List, ecrire une boucle sur une collection. Ce qui manque est a revoir.

Cherchez avant de regarder la solution : c'est en butant sur les difficultes que l'on progresse.

Questions / Réponses

Aucune question. Soyez le premier à poser une question.
★ ★ ★ ★ ★
2 votes. Moyenne 5 sur 5.

Ajouter un commentaire

Anti-spam