Top 100 des questions et réponses des entretiens de printemps

2 janvier 2022

Cadre AOP de printemps a gagné beaucoup de popularité au cours des dernières années. C'est un framework qui supporte java. De nos jours, apprendre le langage de programmation ne suffit plus. Vous devez savoir comment répondre aux questions de l'entretien de printemps.

Réussir un entretien de printemps n'est peut-être pas le plus simple. Cependant, nous avons une longue liste de questions d'entrevue de printemps qui rendront votre entrevue de printemps facile à aborder. Vous pouvez parcourir ces 100 questions d'entretien juste avant votre entretien.

Table des matières



Questions et réponses de l'entrevue de printemps

Q1. Qu'est-ce que Spring Framework ?

Spring Framework est un environnement de support utilisé pour la programmation Java. C'est une plate-forme open source qui aide à simplifier le codage J2EE. Il garde un contrôle sur toutes les meilleures pratiques de programmation. Il est également connu comme le « roi des frameworks » car il fonctionne également avec d'autres plates-formes telles que Hiberner , EJB, Struts, etc.

Q2. Qu'est-ce qu'un haricot de printemps ?

Les objets gérés par les conteneurs Spring IoC sont appelés beans dans le framework Spring. Il fait partie de l'usine de haricots de printemps. Voici les fonctions exécutées avec les étendues de bean : -

  • Instanciation
  • Assemblée
  • Gestion du conteneur Spring

Les beans sont utilisés pour configurer les métadonnées dans le conteneur Spring. Vous trouverez ci-dessous une liste des portées de bean dans le framework Spring.

  1. Classer
  2. Nom
  3. Portée
  4. Constructeur-arg
  5. Propriétés
  6. Mode de câblage automatique
  7. Méthode d'initialisation
  8. Méthode de destruction
  9. Mode d'initialisation différée

Q3. Expliquer le cycle de vie du haricot de printemps

Questions d'entrevue de printemps - Spring Bean Lifecycle

Pour pouvoir utiliser le bean, il doit être instancié. S'il ne reste plus de travail pour le haricot dans le récipient à ressort, il peut être retiré. Cela devra être fait par un peu de nettoyage. Il y a un ensemble d'événements qui se produisent entre l'instanciation et la destruction du bean. L'accent est mis sur les méthodes de rappel. Voici une manière simple de démontrer le cycle de vie d'un haricot.

Initialisation

|__+_|

Destruction

|__+_| Câblage automatique Spring Bean

Cycle de vie du haricot de printemps

Q4. Qu'entendez-vous par injection de dépendance ?

C'est un concept de base dans le framework Spring. Le conteneur place des objets dans d'autres dépendances. Cela déplace les responsabilités vers les conteneurs. En gros, cela soulage une partie du fardeau imposé au code écrit dans le fichier de configuration du bean.

L'exprimer dans un code: -

|__+_|

Q5. Quelles sont les différentes portées de haricot au printemps ?

Champs d'application La description
singletonUne seule instance par conteneur Spring IoC
prototypeUn haricot de printemps mappé à plusieurs instances
demandePour les requêtes HTTP
sessionPour les sessions HTTP
Séance globaleSession HTTP globale

Q6. Quelles sont les principales fonctionnalités des différentes versions de Spring Framework ?

Printemps 2.5Printemps 3.0Printemps 4.0
La configuration est basée sur des annotationsPour les améliorations du langage, il a utilisé Java 5 (configuration basée sur Java)Pris en charge de Java 4 à Java 8

Q7. De combien de manières l'injection de dépendance peut-elle être effectuée ?

Il existe trois manières d'injecter des dépendances dans le fichier de configuration du bean.

  1. Injection de méthode : afin d'initier les fonctions, le client utilise une interface pour fournir une dépendance à la classe.
  2. Injection de propriété : Elle est également connue sous le nom d'injection de setter. Il utilise la propriété publique pour induire l'injection à la classe.
  3. Injection de constructeur : en utilisant l'injection de constructeur client, il fournit l'injection de dépendance.
Voir également Top 100 des questions et réponses d'entrevue Ansible

Q8. Dans quel scénario utiliserez-vous la portée singleton et prototype ?

Singleton est utilisé lorsqu'une instance des définitions de bean est instanciée dans le conteneur Spring. Une nouvelle demande ne peut être effectuée que si le conteneur n'a pas d'autres demandes en attente.

La portée du prototype permet de créer de nouvelles instances pour chaque demande transmise. Il n'est pas nécessaire d'attendre le dédouanement du conteneur. En fonction de vos besoins, vous choisirez l'un plutôt que l'autre. Les injections peuvent être mentionnées dans le fichier de configuration du bean.

Q9. Différencier l'injection constructeur et l'injection setter.

Le tableau ci-dessous établit la comparaison entre l'injection de constructeur et l'injection de setter. Assurez-vous de couvrir tous les points dans les questions d'entrevue du printemps.

CléInjection de constructeurInjection de poseur
CommandeUn ordre doit être suivi pour l'injection de dépendance. Utilise une DI basée sur un constructeurEn fonction des exigences, l'injection du setter est effectuée pour les dépendances.
CirculaireImpossible d'autoriser cette injectionImpossible d'autoriser cette injection
Environnement multi-threadPlus de sécurité dans cet environnementIl n'y a pas de couche de sécurité supplémentaire ici
Génération de code de printempsLa bibliothèque ne le supporte pas.La bibliothèque est prise en charge ici
Cas d'utilisationObligatoireOptionnel

Q10. Que sont les haricots intérieurs au printemps ?

En Java, vous pouvez définir une classe à l'intérieur d'une autre classe. Il en va de même pour les grains intérieurs. Un bean peut exister dans la portée d'un autre bean pour l'utilisation.

Q11. Quels sont les supports de gestion des transactions fournis par Spring ?

Il existe différentes façons de gérer la gestion des transactions programmatiques dans Spring. Voici quelques types d'agrafes de gestion des transactions. Notez que certains peuvent être des termes déclaratifs liés à la gestion des transactions.

  1. Programmatique : utilisez le code pour vous aider à gérer l'ensemble du système. Il y a une grande flexibilité. Cependant, il peut être difficile à entretenir.
  2. Déclaratif : Le code métier reste séparé de la gestion. Cela vous aidera à conserver facilement les deux parties séparées (avec le modèle xml). Cependant, il y a un manque de flexibilité dans ce cas. Le code basé sur XML peut être écrit ici. Les fichiers sont stockés dans un fichier de configuration basé sur xml. Cela fait également partie de la fonctionnalité de gestion déclarative des transactions de Spring.

Q12. Les beans Singleton sont-ils thread-safe dans Spring Framework ?

Les fils de haricot singleton ne sont pas toujours sûrs. Ils doivent être utilisés avec précaution. La surutilisation du même fil le rend dangereux.

Q13. Combien de types de conteneurs IOC existe-t-il au printemps ?

Conteneur Bean Factory : une collection de beans se trouve dans la fabrique de définitions de bean. Chaque fois que le client appelle, le bean est instancié. L'inversion de contrôle IOC solidifie vraiment les conteneurs de l'usine de haricots.

Contexte d'application : Dans l'inversion IOC du contexte d'application de contrôle est une interface, elle est placée au-dessus de la Bean Factory.

Questions d'entretien de printemps

Q14. Quels sont les avantages de JdbcTemplate au printemps ?

Lors de l'utilisation de Spring, il existe un excellent mécanisme pour se connecter à une base de données pour le code Java. Les principales fonctionnalités d'un modèle JDBC sont -

  1. Cela permettra un nettoyage rapide des données. De plus, les connexions à la base de données sont formées lorsque le code est exécuté. Qui doivent être libérés de temps en temps. Le stockage se fait dans un fichier de configuration de bean.
  2. Il convertit automatiquement les exceptions SQL régulières en exceptions d'exécution.

Q15. Différencier BeanFactory et ApplicationContext

Caractéristiques Usine de haricots Contexte d'application
CâblageOuiOui
Enregistrement automatiqueNonOui
Accès à la source des messagesNonOui
PublicationNonOui

Q16. Comment pouvez-vous injecter une collection Java dans Spring ? Donne un exemple?

Voici les manières suivantes d'effectuer l'injection à l'aide de Java Collection.

Élément La description
Utilisé pour les paires nom-valeur
Utilisé pour les paires nom-valeur
Définit des valeurs sans doublons
Définit des valeurs sans doublons

Q17. Que sont les classes pour l'API Spring JDBC ?

Les classes de l'API Spring JDBC peuvent être réparties en quatre packages.

  1. Coeur
  2. Objet
  3. Soutien
  4. La source de données

Q18. Énumérez quelques-uns des avantages de l'IoC.

  1. Diminue la quantité de code nécessaire dans l'application
  2. Il est facile de tester et de déployer le code
  3. Peut facilement apporter des modifications à la conception de l'usine
  4. Il existe une fonctionnalité de chargement paresseux qui améliore les performances.

Q19. Comment injecter un java.util.Properties dans un Spring Bean ?

Voici un exemple de code de fichier de configuration xml qui va nous permettre d'injecter un java.util.Properties.

DatabaseConfig.java (à enregistrer dans le fichier de configuration Spring)

|__+_|

Fichier xml de définition de bean

|__+_|

Q20. Comment pouvez-vous récupérer des enregistrements au printemps JdbcTemplate ?

Voici les étapes que vous pouvez suivre pour récupérer les enregistrements par le modèle spring jdbc.

Requête sur une seule ligne

|__+_|

Q21. Expliquer le câblage automatique de Spring Bean ?

Il est important de déclarer les dépendances de la définition du bean pour activer le câblage automatique. Il existe quatre types ou modes différents dans lesquels le câblage automatique fonctionne : -

  1. 'Non'
  2. 'Nom'
  3. 'par type'
  4. 'Constructeur'

Pour une configuration de fichier XML, le mode par défaut est défini sur 'Non'. Le mode par défaut pour Java est 'byType'.

Haricots simples

Câblage automatique Spring Bean

Q22. Quel est l'avantage du modèle NamedParameterJDBC ?

Au lieu des arguments traditionnels des espaces réservés, le 'NamedParameterJDBCTemplate' vous permet d'utiliser des paramètres à la place. Il est plus facile à entretenir et aide à la lisibilité.

Q23. Comment les métadonnées de configuration sont-elles fournies au conteneur Spring ?

  1. Utiliser les configurations XML
|__+_|
  1. Configuration basée sur les annotations autocâblées
|__+_|
  1. Configuration basée sur Java
|__+_|

Q24. Quel est l'avantage de SimpleJdbcTemplate ?

Utilise à la fois JdbcTemplate et NamedParameterJdbcTemplate. L'utilisation de SimpleJdbcTemplate présente d'autres avantages. Il a des fonctionnalités comme :-

  1. Boîte automatique
  2. Varargs
  3. Génériques pour fournir l'API
  4. JDK 5 ou supérieur

Q25. Comment activer le câblage automatique basé sur les annotations ?

L'annotation autocâblée peut être activée en procédant comme suit : -

  • Étape 1 : Créer un projet et un package dans le dossier src
  • Étape 2 : Ajouter les bibliothèques et ajouter des fichiers JAR externes
  • Étape 3 : Créer des classes Java
  • Étape 4 : configurer un fichier xml
  • Étape 5 : Créer des fichiers Java et des beans avec des configurations

Q26. Expliquez l'annotation @Required avec un exemple ?

Il est utilisé pour l'injection de setter. @Required est également une annotation câblée automatiquement au niveau de la méthode. Veuillez vous référer à l'extrait de code ci-dessous pour mieux comprendre cela. Déclarez-le également dans la classe publique.

Cela est possible grâce à la fonction de gestion des transactions dans le framework Spring. Importer org.springframework.beans.factory.annotation.Required ;

|__+_|

Q27. Quels sont les avantages de la programmation orientée aspect Spring ?

Voici les avantages du printemps AOP.

  1. Ce n'est pas envahissant
  2. Peut être utilisé pour implémenter java (qui est pur)
  3. Utilisation du système de conteneurs pour les injections de dépendances
  4. Met en œuvre une préoccupation transversale sans qu'aucun appel ne lui soit directement adressé
  5. Aide à la régulation des couteaux transversaux
  6. Peut utiliser la configuration XML et l'annotation @AspectJ

Q28. Quels sont les avantages de Spring Framework ?

  1. Peut traiter des problèmes complexes dans JEE. Il prend en charge, gère et héberge toutes les fonctionnalités de Java.
  2. Promouvoir des pratiques de programmation propres.
  3. Peut être utilisé en ségrégation ou en combinaison d'autres couches
  4. Peut fonctionner avec des configurations basées sur des annotations
  5. Peut fonctionner avec des configurations basées sur XML
  6. Les conteneurs sont légers

Q29. Quelles sont les terminologies de la programmation orientée aspect (AOP) ?

Veuillez trouver la liste des terminologies AOP

  1. Aspect : il dispose d'API pour le cross-cutting
  2. Point de jonction : utilisé pour ajouter un plug-in
  3. Conseil : L'action à effectuer
  4. Pointcut : c'est un groupe de point de jonction
  5. Introduction : Déclaration des librairies, attributs et méthodes
  6. Objet cible : également appelé objet de conseil
  7. Tissage : Enchaînement d'objets

Types de conseils

  1. Avant de
  2. Après
  3. Après-course
  4. Après-lancer
  5. Environ
Voir également Top 100 des questions et réponses d'entrevue Ansible

Q30. Définir le câblage du bean.

Lorsque vous décidez de joindre les beans avec des conteneurs, le processus est appelé câblage de bean. Il définit l'utilisation de l'injection de dépendances.

Q 31. Spring Framework prend-il en charge tous les JoinPoints ?

Oui, il est utilisé pour représenter une exécution de la méthode ou de la fonction.

Q32. Quels sont les différents types d'événements dans le framework Spring ?

Voici une liste des événements dans le cadre du printemps

  1. Un événement personnalisé
    1. Application
    2. Éditeur
    3. Auditeur
  2. Événement asynchrone
  3. Événement-cadre existant
  4. Événement piloté par des annotations
  5. Prise en charge générique
    1. Événement d'application générique
    2. Auditeur
    3. Éditeur
  6. Événement lié à la transaction

Q33. Quelles sont les limites du câblage automatique ?

Voici la liste des inconvénients et des limites du câblage automatique au printemps lors de l'exécution d'applications Web.

  1. L'autowiring n'est pas complètement précis. Cela peut provoquer une ambiguïté qui n'est pas facilement gérée par Spring.
  2. Les documentations du printemps peuvent ne pas avoir accès aux informations autocâblées
  3. Plusieurs beans par rapport à leurs conteneurs peuvent être attachés au mauvais constructeur.
  4. Les classes et les chaînes primitives ne peuvent pas être câblées automatiquement
  5. Il y a de fortes chances de passer outre avec le câblage automatique au printemps
  6. La définition des données primitives doit être appelée pour le câblage automatique
  7. Les dépendances élevées dans le programme peuvent causer beaucoup de chaos et de confusion

Q34. Différence entre FileSystemResource et ClassPathResource ?

Ressource du système de fichiersRessource de chemin de classe
Chemin : spring-config.xml doit se trouver à l'emplacement du projetChemin : spring-config.xml doit se trouver dans le dossier src.

Q35. Qu'entendez-vous par configuration de conteneur basée sur les annotations ?

En règle générale, le fichier de configuration Spring peut être écrit dans deux formats. L'un est une configuration basée sur XML et l'autre est basée sur des annotations. Les annotations sont utilisées pour déclarer une certaine classe, fonction, méthode ou variable. Voici la liste des annotations qui sont utilisées au printemps.

  1. @Obligatoire
  2. @Autowired
  3. @Qualificatif
  4. Annotations JSR-250

Q36. Quels sont les types de conseils en AOP ?

AOP est une programmation orientée aspect, l'AOP de printemps a quatre types de conseils différents. Il aide à l'interjection d'un processus. La gestion programmatique des transactions au printemps nécessite de mettre en place des conseils en AOP. Voici les quatre types de conseils utilisés dans la programmation orientée aspect pour le printemps pour exécuter les applications Web.

  1. Conseil avant : Utilisé avant l'exécution du programme
  2. Conseil après retour : utilisé après l'instruction de retour
  3. Conseil après lancement : utilisé si une exception est lancée
  4. Autour des conseils : lors de l'exécution, il s'agit d'une combinaison des trois autres types de conseils

Q37. Comment le câblage des annotations peut-il être activé dans Spring ?

Le câblage d'annotation au printemps doit être activé explicitement. Ce n'est pas une fonction par défaut. L'injection de dépendance doit être effectuée à l'aide d'annotations. Il peut être activé via un fichier de configuration Spring. Une fois la configuration terminée, vous pouvez utiliser les annotations pour appeler la fonction requise.

Q38. Citez quelques-uns des modèles de conception utilisés dans Spring Framework ?

Il existe quatre modèles de conception largement utilisés dans le cadre de printemps

  1. Motif singleton
    1. Haricots simples
Modèle de méthode d'usine
  1. Singleton câblé automatiquement
  2. Modèle de méthode d'usine
    1. Contexte d'application
    2. Contexte externe
Composant au printemps
  1. Modèle de proxy
  2. Modèle de modèle

Q39. Quelle est la différence entre les annotations @Component, @Controller, @Repository & @Service dans Spring ?

modules dans le framework spring mvc

Ceux-ci sont tous utilisés pour détecter automatiquement les haricots de printemps. Plus ou moins leurs fonctionnalités sont les mêmes. Sauf que @component peut être utilisé dans le framework Spring Web MVC pour la définition d'un contrôleur.

Q40. Qu'entendez-vous par annotation @Required ?

Elle est appelée annotation au niveau de la méthode dans le framework Spring. Il est utilisé pour une méthode ou une fonction setter. Il active et rend obligatoire l'injection du setter. La valeur du bean est injectée lors de la configuration.

Q41. Que voulez-vous dire par annotation @autowired ?

Il est utilisé pour instruire et définir les conditions d'auto-câblage dans les cadres de ressort. Aide à décider où et comment il sera utilisé. Il appelle la fonction autowire. L'injection de dépendance est implémentée automatiquement.

Q42. Quel est l'objet cible ?

Les différents types de conseils sont appliqués sur ce qu'on appelle l'objet cible. Pendant l'exécution, un objet est créé qui remplace automatiquement les fonctionnalités existantes. L'objet qui se manifeste automatiquement après l'exécution est appelé l'objet cible.

Q43. Qu'entendez-vous par annotation @Qualifier ?

Parfois, le câblage automatique peut entraîner des conflits. La résolution de tels cas peut être rectifiée à l'aide de @Qualifier.

Q44. Qu'est-ce que le conteneur Spring IoC et l'injection de dépendance ?

Souvent, les objets dépendent les uns des autres pour faire le travail. Dans le cas d'un contrôle d'inversion (réservoir IoC à ressort), cela ne se produit pas. L'injection de dépendance est terminée indépendamment de toute interférence d'objet. Il est utilisé pour appliquer les objectifs de contrôle d'inversion. Le conteneur IoC contrôle généralement les dépendances d'objets dans le printemps aop.

Q45. Quels sont les modules du framework Spring ?

Voici les modules suivants dans le framework Spring.

  • AOP
  • Conteneur Spring IOC (également connu sous le nom d'inversion de contrôle)
  • DAO
  • Le contexte
  • Framework WEB MVC - contrôleur dans le framework spring mvc
  • SERPENT

Ci-dessous, la photo illustrant tous les modules du framework spring mvc

Mise en œuvre de l'AOP

Q46. Qu'entendez-vous par annotation @RequestMapping ?

Afin de gérer la demande http, l'annotation @RequestMapping est utilisée. Les modules qui traitent de cela sont - MVC framework spring et REST. Cette annotation est très souvent utilisée.

Q47. Décrire la prise en charge de Spring DAO ?

La forme complète de DAO est - objet d'accès aux données. Aide à gérer les technologies ADO.NET, NHibernate, etc. Il aide à l'intégration de la connexion à la base de données et au mappage d'objets.

Q48. Spring effectue-t-il le tissage au moment de la compilation?

Oui, tous les frameworks basés sur Java effectuent la tâche d'affaiblissement au moment de la compilation. Spring Framework ne fait pas exception. C'est l'une des caractéristiques du cadre à ressort.

Q49. Nommez les exceptions levées par les classes Spring DAO

  1. Exception distante
  2. Exception SQL
  3. Exception d'E/S
  4. Exception d'accès aux données

Q50. Qu'est-ce que la mise en œuvre de l'AOP ?

La programmation orientée aspect a les implémentations et les concepts suivants.

Inversion de contrôle

Q51. Quelle est la classe de contrôleur frontal de Spring MVC ?

Le front-end d'une application Web reçoit de nombreuses requêtes entrantes et sortantes. Cela doit être contrôlé par la classe de contrôleur frontal du ressort MVC. Dispatcher Servlet est connu comme le contrôleur frontal dans le Spring MVC.

Q52. Quels sont les moyens d'accéder à Hibernate dans Spring ?

Les deux principales façons de gérer l'hibernation à l'aide du printemps sont : -

  1. Étendre la prise en charge de Hibernate DAO : intercepteur AOP
  2. Contrôle d'inversion : mise en veille prolongée et rappel

Q53. Qu'est-ce que l'annotation @Controller ?

Il annote essentiellement le contrôleur. Toute la logique métier est traitée par cette annotation. Il réside dans l'architecture du contrôleur de vue de modèle. Ce qui est la clé de tout le programme.


Q54. Quels sont les différents ORM supportés par Spring ?

Voici les plates-formes prises en charge par l'ORM : -

  1. Hiberner
  2. JDO
  3. Lien supérieur
  4. iBATIS
  5. JPA (API de persistance Java)

Q55. Qu'est-ce que la classe ViewResolver ?

Le résolveur de vue donne un moyen de regarder la vue. Le framework MVC a la classe de résolution de vue qui est utilisée pour récupérer des modèles dans le navigateur. Il n'y a pas de technologie spécifique requise pour faire cette activité. Les noms sont liés à leurs points de vue réels. Voici quelques types de résolveurs de vue.

  1. Résolveur de vue de ressource interne
  2. Résolveur XMLView
  3. Résolveur de vue de groupe de ressources

Q56. Quelle classe ViewResolver est largement utilisée ?

Le résolveur de vue de ressource interne est le résolveur de vue le plus courant et le plus largement utilisé.

Q57. Qu'entendez-vous par Aspect ?

L'aspect dans AOP (programmation orientée aspect) fait référence au style de programmation. Cela décompose essentiellement le programme en parties appelées préoccupations. Les préoccupations qui sont utilisées dans différentes applications sont appelées les préoccupations transversales.

Q58. Spring MVC fournit-il un support de validation?

Spring MVC a la capacité de valider les réponses côté client et côté serveur. La validation à partir du printemps 4 a été placée dans le cadre.

Q59. Expliquer (Inversion du contrôle) IoC Container dans Spring Framework ?

Le conteneur IoC (également connu sous le nom d'inversion de contrôle) permet de contrôler le flux d'un programme par ses objets, contrairement à la méthode de programmation traditionnelle. L'injection de dépendance permet l'exécution du conteneur IoC dans le framework Spring AOP. Voici la liste des avantages du conteneur IoC.

  1. Lorsqu'une certaine tâche est implémentée, l'exécution est découplée (couplage lâche)
  2. Conception centrée sur le module
  3. Les contrats sont faits pour comprendre ce qui se passe dans d'autres modules
  4. Les modifications apportées à un module n'affectent pas les autres
Flux Web de printemps

Questions et réponses de l'entrevue de printemps

Q60. Soulignez la différence entre les préoccupations et les préoccupations transversales dans Spring AOP ?

La préoccupation est le comportement que l'on souhaite mettre en œuvre dans un module donné. C'est la fonctionnalité qui est exécutée pour un programme donné. La préoccupation transversale est une préoccupation qui s'exerce sur l'ensemble de l'application web.

Voir également Top 100 des questions et réponses d'entrevue Ansible

Q61. Quelle est la différence entre Spring AOP et AspectJ AOP ?

Spring AOP (programmation orientée aspect) Aspect J AOP
Cadre basé sur un proxy.Les aspects sont utilisés dans le code principal
Les procurations sont créées au moment où l'application de printemps commenceIl est implémenté avant le début de l'exécution.

Q62. Qu'entendez-vous par Proxy dans Spring AOP Framework ?

Il existe deux types de proxys dans le framework Spring AOP.

  1. Proxy dynamique
  2. Mandataire CGLIB

Q63. Au printemps, qu'est-ce que le tissage ?

Les objets d'un programme doivent être connectés aux autres objets à travers différents modules. C'est l'une des caractéristiques les plus importantes du cadre de ressort. Le processus de combinaison et de connexion des objets est appelé tissage dans le cadre du ressort.

Q64. Qu'est-ce qu'un fichier de configuration Spring ?

Les fichiers de configuration aident à stocker le modèle dans lequel les exécutions doivent se produire. Voici les différents types de fichiers de configuration utilisés par Spring.

  1. Fichier de configuration XML
  2. Fichier de configuration basé sur Java
  3. Fichier de configuration basé sur des annotations

Q65. Spring 5 peut-il s'intégrer à la modularité Jdk9 ?

Oui, Spring 5 peut s'intégrer à la modularité jdk9. Cela permet l'abstraction des packages. Il fait partie du système de modules de la plate-forme Java.

Questions et réponses de l'entrevue de printemps

Q66.Spring peut-il autoriser Spring MVC ou Spring WebFlux dans la même application Spring ?

Oui, il permet le fonctionnement à la fois de Spring MVC et de WebFlux dans la même application Spring.

Q67. Spring MVC peut-il fonctionner sur Netty ?

Oui, c'est différent de l'architecture traditionnelle. Par conséquent, Spring MVC peut également fonctionner sur netty. le botte de printemps fonctionne sur netty par défaut dans la plupart des cas.

Q68. Pouvons-nous avoir plusieurs fichiers de configuration Spring ?

Oui, différents fichiers de configuration de printemps peuvent exister dans le cadre de printemps.

Q69. Définir les types Mono et Flux ?

Les types de données réactifs sont appelés Mono et Flux. Mono est utilisé pour gérer le résultat zéro ou 1. Tandis que Flux est utilisé pour zéro ou plusieurs résultats.

Q70. Définir Spring Webflux ?

Il y a un cadre qui se trouve au-dessus du réacteur du projet, on l'appelle le Webflux de printemps. Il est utilisé pour fournir les flux de messages d'entrée et de sortie asynchrones. Il peut être utilisé pour créer des API et d'autres composants d'application Web.

Q71. Pouvons-nous envoyer un objet en réponse à la méthode du gestionnaire de contrôleur ?

Oui, des objets de réponse doivent être utilisés pour envoyer la réponse au contrôleur dans le spring web mvc.

Questions et réponses de l'entrevue de printemps

Q72. Définir Spring Webflux

Parfois, spring webflux est utilisé à la place du spring web mvc. Il est utilisé pour créer une exécution de boucle asynchrone et non bloquante. Il est pris en charge sur jetty, tomcat, servlet

DispatcherServlet

Q73. Différence entre le client Web et Webtestclient ?

Le client de test Web est réactif et non bloquant. Ceci est utilisé pour tester l'application Web. Tandis que le client Web utilise les API pour vérifier la réponse de l'application.

Q74. Pensez-vous que Spring 5 est compatible avec les anciennes versions de JAVA ?

Spring 5 est compatible avec Java version 9 et supérieure.

Q75. Spring Bean assure-t-il la sécurité des threads ?

Non, les haricots de printemps n'offrent pas de sécurité pour les fils.

Questions et réponses de l'entrevue de printemps

Q76. Comment pouvons-nous utiliser Spring pour créer un service Web reposant renvoyant une réponse JSON ?

Voici les étapes qui vous aideront à créer un service Web reposant renvoyant une réponse JSON.

  1. Créez un projet Web dynamique avec l'aide d'eclipse.
  2. Ajoutez ensuite l'utilitaire json au classpath
  3. Modifier le fichier web.xml requis
  4. Renommez ensuite le nom du fichier xml 'servlet.xml' (situé dans le dossier /WEB-INF)
  5. Créez un bean avec le nom de votre choix.
  6. Créez un contrôleur avec le nom de votre choix
  7. Construire le maven
  8. Cliquez sur exécuter
  9. Utiliser la fonction d'exécution sur le serveur
  10. Testez le service de repos
  11. Passez-le comme paramètres d'URL

Q77. Comment réaliser la localisation dans les applications Spring MVC ?

Nous pouvons utiliser Locale Resolver pour réaliser la localisation dans les applications spring mvc. Il y a une exigence de deux haricots de printemps à cette fin. Session Locale Resolver aidera à localiser les attributs prédéfinis.

L'intercepteur de changement de paramètres régionaux peut identifier les paramètres qui existent dans la requête http. Il donne également la possibilité de paramétrer les propriétés pour une identification facile.

Q78. Comment créer ApplicationContext dans un programme Java ?

Voici les implémentations de contexte d'application les plus couramment utilisées :

  1. Système de fichiers XML
  2. Chemin de classe XML
  3. WebXML

Voici les étapes à suivre pour créer un contexte d'application

  1. Créez un projet avec le nom de votre choix. Créez également un package dans le dossier src
  2. Ajouter les bibliothèques de printemps
  3. Créer une classe Java
  4. Configurer les spring beans dans un fichier
  5. Créez le contenu que vous souhaitez exécuter pour l'application

Q79. Veuillez expliquer DispatcherServlet.

Il s'aligne sur le concept de mécanisme de configuration de Java Spring Beans. C'est le contrôleur frontal du système. Il reçoit les requêtes et les transmet au contrôleur qui envoie ensuite la réponse.

Programmation réactive

Q80. Quelles sont certaines des meilleures pratiques pour Spring Framework ?

  1. Évitez d'utiliser le support de définition de bean XML
  2. Utilisez toujours la configuration Java
  3. À l'intérieur de la classe de domaine, n'utilisez pas de ressort
  4. L'analyse du chemin de classe n'est pas nécessaire
  5. Utilisez @autowire plus souvent
  6. Faites bon usage de la fonction de test du ressort

Questions et réponses de l'entrevue de printemps

Q81. Qu'est-ce que la programmation réactive ?

La programmation réactive est un type de paradigme qui fonctionne avec des flux ou des flux de données. Il nous aide à utiliser les tableaux, les émetteurs et les fonctions. Il aide à la communication des dépendances entre les différents objets du programme.

JoinPoint

Q82. Quelles sont les principales caractéristiques de la programmation réactive ?

  1. Facilité de mise en œuvre
  2. Peut facilement s'adapter aux changements d'algorithmes
  3. Mise à jour dynamique des valeurs

Q83. Lister les concepts de la programmation réactive

  1. Degrés d'explicitation
  2. Dynamique statique
  3. Flux de données
  4. RP d'ordre élevé
  5. Modèles de programmation d'évaluation

Q84. Quelles sont les différentes approches en programmation réactive ?

  1. Impératif : Des équations simples qui attribuent une valeur peuvent également faire partie de la méthode réactive de programmation.
  2. Orientation objet : les concepts OOPS peuvent également être mis en œuvre facilement.
  3. Programmation fonctionnelle
  4. Programmation basée sur des règles

Q85. Quels sont les avantages d'utiliser Spring Tool Suite ?

  1. Conscient du ressort : il est conçu sur mesure pour les applications d'entreprise. Facile à installer la botte à ressort et le cadre à ressort.
  2. L'IDE agnostique : il vous offre une pléthore d'options pour choisir l'environnement de codage.
  3. Lancement continu des derniers outils de temps en temps.

Q86. Différencier Mono et Flux

MONO FLUX
Utilisation d'une valeur uniqueUtilisation de plus d'une valeur unique
Un résultatDes résultats infinis
Exemple de code :

public Mono find User() { if (is Authenticated()) return Mono. just (new ITEM (Pencil, Eraser)); sinon retourner Mono. vide();}
Exemple de code :

public Flux All() { return Flux.just( new ITEM(Pencil, Eraser), new ITEM(Stylo, Ink) );}

Questions et réponses de l'entrevue de printemps

Q87. Qu'est-ce qu'un JoinPoint ?

Dans un aspect, certaines actions se produisent pendant l'exécution. C'est ce qu'on appelle le point de jonction. L'image ci-dessous illustre les points de jonction. Ces questions d'entrevue sont mieux expliquées à l'aide d'un diagramme.

Sécurité du printemps

Q88. Qu'est-ce qu'un MultipartResolver et quand est-il utilisé ?

Le résolveur en plusieurs parties est utilisé pour télécharger des fichiers. Il existe deux types de résolveurs dans le travail du printemps.

  1. Résolution en plusieurs parties de Commons
  2. Résolveur multipartie de servlet standard.

Q89. Qu'est-ce qu'un Pointcut au printemps ?

Dans vos questions d'entrevue, cela pourrait être une question très fréquemment posée. Pendant que les conseils sont exécutés dans un programme, les coupures de points sont placées avant le point de jonction. Voici quelques façons de définir les points de coupe au printemps.

  1. @pointcut(execution(*myprogram.com*())
  2. @pointcut(execution(myprogram.class.name())

Questions et réponses de l'entrevue de printemps

Q90. Différencier Dispatcher Servlet et Context Loader Listener

Caractéristiques Servlet de répartiteur Écouteur de chargeur de contexte
Des haricotsLes contrôleurs sont utilisésServices et DAO sont utilisés
OptionnelNon. Les applications Spring nécessitent toujours le servlet de répartiteurOui. Les applications Spring peuvent survivre sans les écouteurs du chargeur de contexte.
RécipientCrée son propre contexte d'applicationIl est défini dans le web.xml
De baseLa demande est envoyée au contrôleur spring mvcLit le texte de configuration puis l'analyse plus avant

Q91. Différencier le proxy dynamique JDK et le proxy CGLIB

Caractéristiques Dynamique JDK Proxy CGLIB
De baseUn proxy pour la classe cible uniquementLe proxy peut également être placé sur des sous-classes
PaquetDans Java3ème partie
PerformanceRalentirRapide
FinalPas de proxy sur la fonction finale et la classePas de proxy sur la fonction finale et la classe
Cas d'utilisationUtilisé pour les cas où les implémentations s'étendent au-delà d'une interfaceUtilisé lorsque la classe ne peut pas du tout être implémentée.

Q92. Qu'est-ce que la sécurité Spring ?

La sécurité Spring est un cadre idéal qui ajoute une couche de sécurité pour garantir la sécurité des applications Web. Il ajoute des niveaux d'authentification comme la vérification SAML ou Oauth/Oauth2. Cela aide à masquer et à sceller les requêtes http. La pénétration est sécurisée en ajoutant une couche de sécurité supplémentaire. Le schéma ci-dessous illustre les caractéristiques de la sécurité du ressort.

Botte de printemps

Q93. Quels sont les avantages du cadre à ressort?

  1. C'est facile à tester
  2. Application légère - peut être facile sur les performances des systèmes
  3. Bonne abstraction
  4. L'assistance est disponible à tout moment
  5. Il y a un couplage lâche. Le couplage lâche n'est souvent pas trouvé dans d'autres cadres
  6. Les modèles sont déjà prédéfinis

Q94. Différencier Save et Flush et Save in Spring

Caractéristique Enregistrer et rincer Sauvegarder
DépôtRéférentiel JPADépôt de caillé
Sauvegarde groupéeNon supportéPrise en charge
Stratégie de vidage des donnéesDirectement rincé à DBBesoin d'appeler explicitement la chasse d'eau
Visibilité des données après sauvegardeLes modifications sont visibles à tout momentIl ne sera pas visible à l'extérieur
Cas d'utilisationLorsque des modifications sont apportées deux fois ou plus pour une même transactionLorsqu'il n'est plus nécessaire d'accéder aux modifications.

Q96. Faites une comparaison entre Spring servlet xml et application context xml

Caractéristique Contexte d'application xml Servlet de printemps xml
Les référencesPrend en charge les haricots de référencePrend en charge les beans de référence sur différents xml
BalayageDes filtres peuvent être ajoutésLes composants doivent être spécifiés
De baseFait référence aux beans appelés dans un seul servlet.Fait référence aux beans liés ou connectés au servlet donné

Q97. Qu'est-ce que la botte de printemps?

Il est placé au-dessus de l'ensemble du cadre. Il donne essentiellement une interface simple à l'utilisateur pour utiliser le framework Spring. Il peut aider à exécuter divers types d'applications mentionnés ci-dessous.

Configuration des bottes de printemps Intelligente

Botte de printemps

Q98. Quelles sont les fonctionnalités de Spring Boot ?

  1. Il est opiniâtre : il comprend les fonctionnalités par lui-même lorsqu'il est confronté à des problèmes répétitifs.
  2. Peut fonctionner de manière autonome : il ne nécessite pas de plugins supplémentaires pour l'exécuter.
  3. Configuration automatique : il n'est pas nécessaire de l'installer séparément. Il s'agit d'un environnement packagé.

Q99. La configuration de Spring Boots est-elle intelligente ? Expliquer brièvement.

La configuration intelligente indique directement sa caractéristique principale qui est la configuration automatique. Voici un schéma qui illustre cela.

processus de démarrage d'une application basée sur java à l'aide de spring boot

Q100. Quel est le processus de démarrage d'une application basée sur Java à l'aide de Spring Boot

  1. Packager l'application
  2. Sélectionnez le type de serveur
  3. Configurer le serveur Web
  4. Préparez-vous pour le processus de déploiement
  5. Exécutez-le à l'aide de la commande - java-jar my-first-application.jar

Conclusion

Ces 100 questions d'entrevue de printemps vous aideront à faire face à votre prochaine entrevue de printemps. Ces questions d'entrevue vont du niveau de base au niveau intermédiaire des questions qui peuvent être posées lors de votre entrevue. Si vous êtes à la recherche d'un emploi dans le domaine de l'assistance informatique, vous pouvez consulter notre Questions d'entretiens chez Support informatique .