Decrire Spring Core en quelques mots
C’est un conteneur qui gère des composants au sein d’un contexte applicatif.
Ces composants (ou beans) sont associés en utilisant l’injection de dépendances dans le contexte d’application de Spring pour construire une application complète.
Quels services sont fournis par Spring au delà de Core ?
Expliquer l’injection de dépendances
Lorsqu’un composant a besoin d’autres composants, il y a deux approches:
Quels sont les 3 moyens d’injecter des dépendances avec Spring ?
Quel type d’injection de dépendances est préférable et pourquoi ?
Par constructeur pour les dépendances obligatoires (et par setter pour d’éventuelles dépendances optionnelles)
Quels sont les différents moyens de configurer Spring ?
A quoi servent @Configuration et @Bean ?
@Configuration annote une classe qui va enrichir le contexte applicatif avec un certain nombre de composants.
Ses méthodes sont annotées avec @Bean. Chaque méthode crée un composant dont l’id sera par défaut le nom que la méthode qui a servi à le créer.
Comment fonctionne la configuration automatique ?
Quelle annotation est utilisée pour indiquer qu’on souhaite injecter une dépendance ?
@Autowired
Comment créer un repository avec Spring Core ?
Quel est l’élément central d’un repository JDBC ?
JdbcTemplate contient les méthodes nécessaires pour requêter (query, queryForObject) et mettre à jour (update) la base.
Comment Spring JDBC fait-il le lien entre une ligne d’une table et un objet Java ?
Au moyen d’une implémentation de
RowMapper.mapRow(ResultSet rs, int rowNum)
Quelle est la philosophie de Spring concernant les exceptions de persistence ?
Qu’est-ce-que l’annotation @Repository a de particulier ?
Spring va détecter les exceptions de persistence spécifiques à la plateforme et les transformer en exceptions Spring.
Quelles sont les différentes sources pour les propriétés du contexte Spring ?
Comment définir la portée d’un bean Spring ?
@Scope
Quelles sont les 4 différentes portées des beans Spring ?
Comment définir une implémentation par défaut si une interface en possède plusieurs ?
@Primary
Si une interface possède plusieurs implémentations, comment guider le choix de Spring ?
A quoi sert l’annotation @ResponseBody ?
Elle indique qu’une méthode d’un contrôleur va positionner sa valeur de retour dans le corps de la réponse HTTP, plutot que d’être mis dans un modèle pour l’évaluation d’une vue côté serveur.
A quoi sert ResponseEntity<t> ?</t>
Elle permet de manipuler finement le contenu de la réponse HTTP:
A quoi sert @RequestBody ?
Elle indique que le paramètre annoté sera renseigné avec la valeur provenant du corps de la requête HTTP.
Quels sont les différents moyens de consommer une API REST ?