Académique Documents
Professionnel Documents
Culture Documents
Review-SPB
Review-SPB 1
d'applications Spring en fournissant une configuration par défaut et des
fonctionnalités prêtes à l'emploi.
8. Quels sont les principaux avantages des microservices par rapport à une
architecture monolithique ?
Réponse : Les principaux avantages des microservices incluent une meilleure
évolutivité, une plus grande flexibilité, une facilité de déploiement et une isolation
des erreurs.
10. Quelle est la fonctionnalité principale fournie par Spring Cloud Netflix ?
Réponse : Spring Cloud Netflix fournit des fonctionnalités pour la mise en
œuvre de la découverte de services, la gestion de la configuration, la tolérance
aux pannes et l'équilibrage de charge dans un environnement de microservices.
12. Quelles sont les étapes principales du cycle de vie d'un projet Maven ?
Réponse : Les étapes principales sont : validate, compile, test, package, verify,
install et deploy.
13. Quelle est la différence entre un Web Service SOAP et un Web Service
RESTful ?
Réponse : Un Web Service SOAP utilise le protocole SOAP et une structure
XML pour échanger des données, tandis qu'un Web Service RESTful utilise des
principes REST et des formats légers comme JSON pour les échanges de
données.
Review-SPB 2
14. Qu'est-ce qu'une annotation @RestController en Spring Boot ?
Réponse : L'annotation @RestController est utilisée pour marquer une classe
comme un contrôleur REST dans Spring Boot, ce qui signifie que ses méthodes
renvoient directement des réponses JSON ou XML plutôt que de générer des
vues.
19. Qu'est-ce que l'équilibrage de charge basé sur les règles (Rule-based load
balancing) dans Spring Cloud Netflix ?
Réponse : L'équilibrage de charge basé sur les règles est une fonctionnalité de
Spring Cloud Netflix qui permet de définir des règles personnalisées pour
distribuer les requêtes entre les instances de microservices, en utilisant des
métriques ou des stratégies spécifiques.
Review-SPB 3
21. Comment définir un profil dans un projet Maven ?
Réponse : Un profil Maven peut être défini dans le fichier pom.xml en utilisant
l'élément <profiles> et en spécifiant les configurations spécifiques à ce profil.
22. Qu'est-ce qu'un point de terminaison (endpoint) dans le contexte des Web
Services ?
Réponse : Un point de terminaison est l'URL ou l'URI d'un service Web où les
clients peuvent envoyer des requêtes et recevoir des réponses.
Review-SPB 4
machines ou des conteneurs pour faire face à la demande croissante ou
décroissante.
31. Qu'est-ce que le plugin Maven Compiler et quel est son rôle ?
Réponse : Le plugin Maven Compiler est utilisé pour compiler les sources Java
du projet selon la version spécifiée dans la configuration. Il génère les fichiers
.class correspondants.
33. Qu'est-ce que l'inversion de contrôle (IoC) dans le contexte de Spring Boot
?
Réponse : L'inversion de contrôle (IoC) est un principe selon lequel la
responsabilité de la création et de la gestion des objets est déléguée à un
conteneur (comme Spring), permettant une meilleure modularité et une
réduction des dépendances directes entre les classes.
Review-SPB 5
Réponse : Le modèle de déploiement "containerization" consiste à encapsuler
les microservices et leurs dépendances dans des conteneurs légers et
autonomes (comme Docker) pour faciliter le déploiement et la portabilité.
38. Qu'est-ce que le "circuit breaker pattern" et comment cela peut aider dans
une architecture de microservices ?
Réponse : Le "circuit breaker pattern" est un modèle de conception qui permet
de gérer les défaillances et de prévenir les effets en cascade en interrompant
temporairement les appels vers un service défaillant, offrant ainsi une meilleure
résilience et stabilité au système.
Review-SPB 6
43. Quelle est la différence entre une annotation @RestController et une
annotation @Controller en Spring Boot ?
Réponse : @RestController est une combinaison de @Controller et @ResponseBody ,
indiquant que les méthodes renvoient directement des réponses JSON ou XML,
tandis que @Controller est généralement utilisé pour renvoyer des vues.
46. Qu'est-ce que l'autorisation basée sur les rôles (role-based authorization)
dans Spring Security ?
Réponse : L'autorisation basée sur les rôles consiste à définir des rôles (par
exemple, "ADMIN", "USER") et à accorder ou refuser l'accès à certaines
ressources en fonction du rôle de l'utilisateur connecté.
47. Qu'est-ce que l'équilibrage de charge basé sur les algorithmes (algorithm-
based load balancing) dans Spring Cloud Netflix ?
Réponse : L'équilibrage de charge basé sur les algorithmes permet de distribuer
les requêtes entre les instances de microservices en utilisant des algorithmes
spécifiques tels que le Round Robin, le poids ou le meilleur temps de réponse.
Review-SPB 7
différents systèmes de messagerie (comme Kafka, RabbitMQ) comme backend
pour la communication asynchrone entre les microservices.
51. Maven est un outil utilisé pour la gestion de projets basés sur Java. Vrai ou
faux ?
(Vrai)
53. Quelle balise est utilisée pour définir une dépendance dans le fichier
pom.xml de Maven ?
(<dependency>)
54. Quelle est la différence entre les scopes "compile" et "runtime" dans
Maven ?
("compile" indique que la dépendance est nécessaire à la compilation et à
l'exécution, tandis que "runtime" indique que la dépendance est nécessaire
uniquement à l'exécution)
55. Qu'est-ce que SOAP (Simple Object Access Protocol) dans le contexte des
Web Services ?
(Un protocole basé sur XML pour l'échange de messages entre applications
distribuées)
56. Quelle est la différence entre un Web Service SOAP et un Web Service
RESTful ?
(SOAP utilise XML et des protocoles spécifiques, tandis que RESTful utilise des
formats de données légers comme JSON et des méthodes HTTP)
57. Quelle annotation est utilisée pour créer un Web Service RESTful dans
Spring Boot ?
(@RestController)
Review-SPB 8
(Il fournit un cadre de développement rapide et facilite la configuration et la
gestion des services)
63. Quelle est la fonction de Spring Cloud Config dans une architecture de
microservices ?
(La gestion centralisée des configurations pour les services)
66. Quelle annotation est utilisée pour sécuriser les points de terminaison
(endpoints) dans Spring Boot ?
(@Secured ou @PreAuthorize)
67. Qu'est-ce que Spring Cloud Stream dans le contexte des microservices ?
68. Qu'est-ce que le protocole HTTP dans le contexte des Web Services ?
(Un protocole de communication client-serveur utilisé pour le transfert de
données)
Review-SPB 9
70. Qu'est-ce que l'inversion de contrôle (IoC) dans le contexte de Spring Boot
?
1. Quelle annotation est utilisée pour définir une classe en tant que
composant géré par Spring ?
(@Component)
2. Quelle annotation est utilisée pour définir une classe en tant que service
dans Spring ?
(@Service)
3. Quelle annotation est utilisée pour définir une classe en tant que
repository dans Spring ?
(@Repository)
4. Quelle annotation est utilisée pour définir une classe en tant que
contrôleur REST dans Spring Boot ?
(@RestController)
5. Quelle annotation est utilisée pour mapper une méthode à une URL
spécifique dans un contrôleur REST ?
(@RequestMapping)
6. Quelle annotation est utilisée pour injecter une dépendance dans une
classe dans Spring ?
(@Autowired)
7. Quelle annotation est utilisée pour indiquer qu'une méthode doit être
exécutée avant le démarrage de l'application Spring Boot ?
(@PostConstruct)
Review-SPB 10
8. Quelle annotation est utilisée pour spécifier une propriété de configuration
dans Spring Boot ?
(@Value)
9. Quelle annotation est utilisée pour définir une transaction dans une
méthode ou une classe dans Spring ?
(@Transactional)
10. Quelle annotation est utilisée pour gérer les exceptions dans une méthode
ou une classe dans Spring ?
(@ExceptionHandler)
11. Quelle annotation est utilisée pour configurer la logique de traitement des
requêtes GET dans un contrôleur REST ?
(@GetMapping)
12. Quelle annotation est utilisée pour configurer la logique de traitement des
requêtes POST dans un contrôleur REST ?
(@PostMapping)
13. Quelle annotation est utilisée pour configurer la logique de traitement des
requêtes PUT dans un contrôleur REST ?
(@PutMapping)
14. Quelle annotation est utilisée pour configurer la logique de traitement des
requêtes DELETE dans un contrôleur REST ?
(@DeleteMapping)
15. Quelle annotation est utilisée pour valider les données d'une requête dans
Spring Boot ?
(@Valid)
16. Quelle annotation est utilisée pour indiquer qu'une méthode ou une classe
est liée à une session HTTP dans Spring Boot ?
(@SessionAttributes)
17. Quelle annotation est utilisée pour définir les paramètres d'une requête
HTTP dans une méthode de contrôleur REST ?
(@RequestParam)
Review-SPB 11
18. Quelle annotation est utilisée pour accéder aux attributs d'une requête
HTTP dans une méthode de contrôleur REST ?
(@PathVariable)
19. Quelle annotation est utilisée pour indiquer qu'une classe ou une méthode
doit être ignorée lors de la configuration automatique de Spring Boot ?
(@SpringBootApplication(exclude = ...))
20. Quelle annotation est utilisée pour spécifier l'ordre d'exécution des beans
dans Spring Boot ?
(@Order)
21. Quelle annotation est utilisée pour définir la portée d'un bean dans Spring
Boot ?
(@Scope)
22. Quelle annotation est utilisée pour activer la sécurité basée sur les rôles
dans Spring Boot ?
(@EnableGlobalMethodSecurity)
23. Quelle annotation est utilisée pour définir la configuration de sécurité dans
Spring Boot ?
(@EnableWebSecurity)
24. Quelle annotation est utilisée pour activer la configuration de cache dans
Spring Boot ?
(@EnableCaching)
25. Quelle annotation est utilisée pour configurer la connexion à une base de
données dans Spring Boot ?
(@ConfigurationProperties)
26. Quelle annotation est utilisée pour marquer une méthode comme étant
asynchrone dans Spring Boot ?
(@Async)
27. Quelle annotation est utilisée pour configurer les événements de cycle de
vie d'un bean dans Spring Boot ?
(@EventListener)
Review-SPB 12
28. Quelle annotation est utilisée pour intercepter les appels de méthode dans
Spring Boot ?
(@Aspect)
31. Quelle annotation est utilisée pour indiquer qu'une classe doit être
scannée lors de la configuration automatique de Spring Boot ?
(@ComponentScan)
32. Quelle annotation est utilisée pour configurer une classe comme un point
d'accès aux requêtes SOAP dans Spring Boot ?
(@Endpoint)
34. Quelle annotation est utilisée pour spécifier les conditions d'exécution
d'un bean dans Spring Boot ?
(@Conditional)
37. Quelle annotation est utilisée pour configurer la gestion des transactions
dans Spring Boot ?
(@EnableTransactionManagement)
Review-SPB 13
38. Quelle annotation est utilisée pour configurer l'authentification basée sur
les jetons (token-based authentication) dans Spring Boot ?
(@EnableOAuth2Sso)
39. Quelle annotation est utilisée pour activer la planification des tâches dans
Spring Boot ?
(@EnableScheduling)
40. Quelle annotation est utilisée pour configurer les filtres de requêtes dans
Spring Boot ?
(@Filter)
41. Quelle annotation est utilisée pour configurer l'utilisation des templates de
vues dans Spring Boot ?
(@EnableWebMvc)
42. Quelle annotation est utilisée pour configurer les autorisations d'accès aux
points de terminaison dans Spring Boot ?
(@PreAuthorize)
43. Quelle annotation est utilisée pour marquer une classe ou une méthode
comme étant éligible à la validation dans Spring Boot ?
(@Validated)
44. Quelle annotation est utilisée pour spécifier les propriétés d'une requête
HTTP dans une méthode de contrôleur REST dans Spring Boot ?
(@RequestBody)
45. Quelle annotation est utilisée pour gérer les exceptions spécifiques dans
Spring Boot ?
(@ExceptionHandler)
46. Quelle annotation est utilisée pour définir la configuration d'un client REST
dans Spring Boot ?
(@RestClient)
47. Quelle annotation est utilisée pour définir une condition d'activation d'un
bean dans Spring Boot ?
(@ConditionalOnProperty)
Review-SPB 14
48. Quelle annotation est utilisée pour définir la configuration de sécurité
basée sur les expressions dans Spring Boot ?
(@EnableGlobalMethodSecurity)
49. Quelle annotation est utilisée pour configurer les filtres de requêtes au
niveau des méthodes de contrôleur REST dans Spring Boot ?
(@RequestMapping)
50. Quelle annotation est utilisée pour spécifier la portée d'un bean dans
Spring Boot ?
(@Scope)
Review-SPB 15