Introduction aux questions et réponses d'entrevue de Spring Framework

Spring Framework est l'un des frameworks Java les plus utilisés. Les idées de base du cadre Spring sont «l'injection de dépendance» et la «programmation orientée vers l'aspect». Le framework Spring est souvent utilisé dans les applications java traditionnelles pour atteindre un couplage lâche entre des éléments complètement différents en implémentant l'injection de dépendances et nous effectuerons des tâches transversales comme le travail et l'utilisation du support Spring pour la programmation orientée aspect. Puisqu'il s'agit d'un framework open source avec de nombreuses ressources en ligne et des membres actifs de la communauté, ce qui le rend simple et amusant à la fois.

Voici une liste complète des questions et réponses de l'entrevue du cadre du printemps 2019:

Maintenant, si vous recherchez un emploi lié à Spring Framework, vous devez vous préparer pour les questions d'entrevue 2019 Spring Framework. Il est vrai que chaque entretien est différent selon les différents profils d'emploi, mais pour effacer l'entretien, vous devez avoir une bonne et claire connaissance de Spring Framework. Ici, nous avons préparé les importantes questions et réponses d'entrevue de Spring Framework qui vous aideront à réussir votre entrevue. Cette liste de questions est divisée en deux parties qui sont les suivantes:

  • Partie 1 - Questions d'entrevue du cadre de printemps (de base)
  • Partie 2 - Questions d'entrevue du cadre de printemps (avancé)

Partie 1 - Questions d'entrevue du cadre de printemps (de base)

Cette première partie couvre le cadre de base du printemps Questions et réponses d'entrevue

Q1.Quelles sont les caractéristiques et avantages importants de Spring Framework?

Répondre:
Spring Framework est construit sur un haut de 2 idées de style - Injection de dépendance et programmation orientée aspect.
Certains des avantages de l'utilisation de Spring Framework sont les suivants:

  • Réduire les dépendances directes entre des éléments complètement différents de l'appliance, généralement l'instrument Spring IoC est responsable de l'initialisation des ressources ou des beans et de les injecter en tant que dépendances.
  • L'écriture de cas unitaires est simple dans le cadre de Spring, car notre logique métier n'a pas de dépendances directes avec les catégories d'implémentation de ressources réelles. nous pouvons simplement écrire un aperçu de la configuration et injecter nos mock beans pour tester les fonctions.
  • Réduit la quantité de code de plaque de chaudière, comme l'initialisation d'objets, les ressources d'ouverture / fermeture. Je préfère les tas de catégories JdbcTemplate car cela nous aide à supprimer tout le code de plaque de chaudière fourni avec la programmation JDBC.
  • Le framework Spring est divisé en plusieurs modules, il nous aide à garder notre application légère.
  • Le framework Spring prend en charge la plupart des options Java EE et encore plus. Il est continuellement à la pointe des nouvelles technologies, par exemple, il existe un projet Spring pour Android pour nous aider à écrire du code plus élevé pour les applications Android natives. Cela fait du cadre de ressort un ensemble complet et que nous n'avons pas à être obligés de prendre soin d'un cadre complètement différent pour diverses nécessités.

Q2.Que comprenez-vous par injection de dépendance?

Répondre:
Le modèle de style d'injection de dépendances nous permet de nous débarrasser des dépendances codées en dur et de créer notre application librement couplée, extensible et réparable. nous sommes capables d'implémenter un modèle d'injection de dépendance pour déplacer la résolution de dépendance de la compilation à l'exécution.
Certains des avantages de l'utilisation de l'injection de dépendances sont la séparation des problèmes, la réduction du code de la chaudière, les éléments configurables et les tests unitaires simples.

Passons aux prochaines questions d'entrevue du cadre de printemps.

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

Répondre:
Nous pouvons installer des plugins dans Eclipse pour utiliser toutes les options de Spring Tool Suite. Il est livré avec des éléments nécessaires comme un support adapté, des modèles pour créer différents types de Spring sont fournis avec des performances plus élevées avec les applications Spring.
J'aime STS car il met en évidence les éléments Spring et si vous utilisez des coupes de point et des conseils AOP, cela montre clairement que les moyens peuvent revenir en dessous de la coupe de point précise. par conséquent, au lieu de tout mettre par nous-mêmes, j'aime utiliser STS une fois le développement d'applications principalement basées sur Spring.

Q4.Nommez certains des modules Spring importants?

Répondre:
Il s'agit des questions d'entrevue courantes du cadre de printemps posées lors d'une entrevue. Certains des modules Spring Framework nécessaires sont:

  • Spring Context - pour l'injection de dépendances.
  • Spring AOP - pour la programmation orientée aspect.
  • Spring DAO - pour les opérations d'information utilisant le modèle DAO
  • Spring JDBC - pour la prise en charge JDBC et DataSource.
  • Spring ORM - pour le support des outils ORM comme Hibernate
  • Module de filet de ressort - pour faire des applications de filet.
  • Spring MVC - Implémentation Model-View-Controller pour créer des applications réseau, des services réseau, etc.

Q5.Qu'est-ce que les arguments Aspect, Advice, Pointcut, JointPoint et Advice dans AOP?

Répondre:

Aspect : Aspect est une catégorie qui met en œuvre des questions transversales, comme la gestion des actions de groupe. Les aspects sont souvent une catégorie standard organisée puis organisée dans un fichier de configuration Spring Bean ou nous pouvons utiliser la prise en charge Spring AspectJ pour déclarer une catégorie Aspect à l'aide de l'annotation @Aspect.

Conseil : la recommandation est que l'action a été prise dans un but précis. En termes de programmation, ce sont des moyens qui disparaissent une fois qu'un objectif particulier est atteint avec un pointcut correspondant dans l'application.

Pointcut : Pointcut est des expressions régulières qui correspondent à une partie des points pour déterminer si une recommandation doit être morte ou non. Pointcut utilise des formes d'expressions complètement différentes qui correspondent à la partie des points. Le framework Spring utilise le langage d'expression pointcut AspectJ pour jouer un rôle crucial dans les points où les méthodes de recommandation sont appliquées.

Join Point: Une partie de l'objectif est que l'objectif spécifique de l'application comme l'exécution de la technique, la gestion des exceptions, les valeurs des variables d'objet en constante évolution, etc. Dans Spring AOP, être une partie des points est souvent l'exécution d'une technique.

Arguments de conseil: nous sommes en mesure de passer des arguments dans les voies de recommandation. nous pouvons utiliser l'expression args () dans le pointcut à appliquer à toute technique qui correspond au modèle d'argument. Si nous avons tendance à utiliser cela, alors nous voulons utiliser le nom constant dans la technique de recommandation, quel que soit le type d'argument défini.

Partie 2 - Questions d'entrevue du cadre de printemps (avancé)

Jetons maintenant un coup d'œil aux questions d'entretien avancées du cadre Spring.

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

Répondre:
AspectJ est que l'implémentation standard de l'industrie pour la programmation orientée aspect alors que Spring implémente AOP pour quelques cas. Les principales variations entre Spring AOP et AspectJ sont:

  • Le Spring AOP est plus facile à utiliser que AspectJ, car nous n'avons pas à nous soucier de la méthode de tissage.
  • Spring AOP prend en charge les annotations AspectJ, donc si vous êtes familier avec AspectJ, alors opérer avec Spring AOP est moins compliqué.
  • Spring AOP prend uniquement en charge les AOP basés sur proxy, par conséquent, il est souvent appliqué uniquement à l'exécution de la technique faisant partie des points. AspectJ prend en charge tous les types de coupes de points.
  • L'un des défauts de Spring AOP est qu'il est souvent appliqué uniquement aux grains créés via Spring Context.

Q7.Qu'est-ce qu'un haricot printanier?

Répondre:
Toute catégorie java traditionnelle initialisée par Spring IoC est nommée Spring Bean. nous avons tendance à utiliser Spring ApplicationContext pour inciter l'instance Spring Bean.
Spring IoC gère le cycle de vie de Spring Bean, les étendues de bean et l'injection de toutes les dépendances nécessaires dans le bean.

Passons aux prochaines questions d'entrevue du cadre de printemps.

Q8). Quelles sont les différentes portées de Spring Bean?

Répondre:
Il y a 5 portées décrites pour les haricots de printemps.

  1. singleton : une seule instance du bean est créée pour chaque instrument. cela peut être la portée par défaut pour les haricots de printemps. alors qu'en utilisant cette portée, assurez-vous que le bean Spring n'a pas de variables d'instance partagées sinon cela entraînerait des problèmes d'incohérence des informations car il n'est pas thread-safe.
  2. prototype : une instance de remplacement est créée à chaque fois que le bean est demandé.
  3. request : cela peut être le même que la portée du paradigme, mais il est destiné à être utilisé pour les applications réseau. une instance de remplacement du bean est créée pour chaque requête HTTP.
  4. session : un bean de remplacement est créé pour chaque session HTTP par l'instrument.
  5. international-session: ceci peut être utilisé pour produire des beans de session globale pour les applications Portlet.

Spring Framework est extensible et que nous produirons également nos propres étendues, mais la plupart du temps, nous avons tendance à être sensibles aux étendues fournies par le framework.

Pour définir les portées de haricot Spring, nous pouvons utiliser l'attribut «scope» dans la partie bean ou l'annotation @Scope pour les configurations basées principalement sur les annotations.

Pour définir les portées du bean Spring, nous pouvons utiliser l'attribut «scope» dans l'élément bean ou l'annotation @Scope pour les configurations basées sur les annotations.

Q9. Quel est le cycle de vie du Spring Bean?

Répondre:
Ce sont les questions fréquemment posées lors de l'entretien dans le cadre du Spring Framework. Spring Beans est initialisé par l'instrument Spring et tout le monde injecte les dépendances. une fois qu'un contexte est détruit, il détruit en outre tous les beans initialisés. Cela fonctionne bien dans la plupart des cas, mais nous souhaitons généralement initialiser des ressources alternatives ou effectuer une validation avant de créer nos beans capables d'utiliser. Spring Framework prend en charge les méthodes de post-initialisation et de pré-destruction dans les beans Spring.
Nous pouvons le faire de 2 manières différentes: en implémentant les interfaces InitializingBean et DisposableBean ou en utilisant l'attribut init-method et destroy-method dans les configurations Spring Bean.

Q10. Spring Bean assure-t-il la sécurité des fils?

Répondre:
La portée par défaut du bean Spring est un singleton, il n'y aura donc qu'une seule instance par contexte. ce qui signifie que tout le monde ayant une variable de niveau de catégorie que n'importe quel thread mettra à jour peut provoquer des informations incohérentes. ainsi, en mode par défaut, les beans Spring ne semblent pas être thread-safe.
Cependant, nous sommes en mesure de modifier la portée du bean Spring à la demande, le paradigme ou la session pour atteindre la sécurité des threads à la valeur des performances. C'est une décision de conception et a pris en charge les nécessités du projet.

Article recommandé

Ceci a été un guide pour la liste des questions et réponses d'entrevue de Spring Framework afin que le candidat puisse réprimer facilement ces questions d'entrevue de Spring Framework. Ici, dans cet article, nous avons étudié les principales questions d'entrevue de Spring Framework qui sont souvent posées lors des entretiens. Vous pouvez également consulter les articles suivants pour en savoir plus -

  1. Questions d'entretiens chez Spring Boot
  2. Questions d'entretiens chez J2EE
  3. Questions d'entretiens chez PHP OOP
  4. Questions d'entretiens
  5. Spring vs Hibernate: Quelles sont les différences
  6. Spring vs Struts: Caractéristiques