English English French French Spanish Spanish German German
Geekflare est soutenu par notre public. Nous pouvons gagner des commissions d'affiliation en achetant des liens sur ce site.
Partager sur:

22 questions et réponses fréquemment posées lors de l'entretien avec Spring Boot

questions-entretien-springboot
Scanner de sécurité des applications Web Invicti – la seule solution qui offre une vérification automatique des vulnérabilités avec Proof-Based Scanning™.

Êtes-vous un développeur Java Spring Boot impatient de participer à un entretien à venir, mais vous ne savez pas à quelles questions vous attendre ? Nous sommes ici pour aider!

Cet article vous aidera à vous préparer de manière adéquate en décrivant plusieurs questions et réponses fréquemment posées lors des entretiens Spring Boot que les enquêteurs peuvent utiliser pour vous tester.

Les enquêteurs utilisent des questions stratégiques Java Spring Boot pour tester les niveaux de compétence des personnes interrogées en rapport avec leur rôle désigné. Par conséquent, vous devez vous préparer avec des questions pertinentes et savoir comment y répondre.

Avant de passer directement aux questions de l'entretien et à leurs réponses correspondantes, donnons un aperçu de base de ce qu'est Spring Boot et de son utilité pour les développeurs Java.

Qu'est-ce que Java Spring Boot ?

Cette Framework Java est une création de l'équipe pivot en 2014. Spring Boot, qui est un framework open-source, développe efficacement des applications indépendantes, de niveau production, et peut également s'exécuter sur une machine virtuelle Java (JVM).

Les développeurs Java le préfèrent pour les applications Web et microservices développement pour son processus d'installation rapide et facile et son temps de configuration sûr.

L'installation et la configuration faciles des applications basées sur Spring par Spring Boot sont possibles grâce à ses trois fonctionnalités principales qui incluent :

  • Autoconfiguration - qui est une configuration automatique de l'application Spring.
  • Spring Boot fournit une approche avisée des valeurs de configuration par défaut à utiliser et des packages à installer pour les dépendances requises. Cette approche avisée aide à la mise en place rapide des projets.
  • Sprsetupoot vous permet d'exécuter votre application indépendamment sans avoir besoin d'un le serveur web.

En quoi Spring Boot est-il utile aux développeurs Java ?

D'une part, les développeurs Java utilisant Spring Boot ont plus de facilité avec la configuration automatique de tous les composants nécessaires pour développer une application Spring de qualité production. Ceci, à long terme, réduit le temps de développement et augmente finalement leur efficacité.

Spring Boot s'intègre également facilement à l'écosystème de Spring, qui comprend Spring JDBC, Spring Data, Spring Security et Spring ORM.

Les développeurs Java peuvent également connecter Spring Boot à différents bases de données comme Oracle, MySQL, PostgreSQL et MongoDB, entre autres.

Bien sûr, des configurations flexibles avec des configurations XML, des Java Beans et des transactions de base de données sont parmi d'autres fonctionnalités utiles.

Par conséquent, maintenant que vous avez un aperçu de base de Spring Boot, examinons certaines des questions et réponses fréquemment posées lors de l'entretien avec Spring Boot qui vous aideront à préparer votre entretien.

Questions et réponses de l'entretien d'embauche de Spring Boot

Questions d'entretien pour Spring Boot

What are some features of Spring Boot?

Certaines de ces fonctionnalités populaires incluent :

  • La CLI Spring Boot fournit Groovy pour écrire l'application Spring Boot ; à long terme, le code passe-partout est évité.
  • Spring Boot fournit une journalisation et une fonction de sécurité qui sécurise facilement votre application contre les risques potentiels. menaces à la sécurité.
  • Il fournit une configuration automatique des composants pertinents pour votre projet, évitant ainsi le risque de fichiers WAR inutiles.
  • L'initialisateur de démarrage définit pour vous une structure de projet interne par défaut. De cette façon, vous n'avez pas à configurer manuellement la structure du projet.
  • La fonction d'actionneur Spring Boot donne accès à des informations et à des mesures au fur et à mesure que l'application s'exécute.
  • Bien sûr, l'une des fonctionnalités clés de Spring Boot, Starter Dependency, permet d'agréger les dépendances couramment utilisées d'une fonctionnalité particulière.

What are Spring Boot Starters?

Les démarreurs Spring Boot sont des descripteurs de dépendance qui incluent un ensemble de fournisseurs de gestion des dépendances qui activent les dépendances de l'application. Ils fournissent le cadre avec la résolution de dépendance automatique. Les starters favorisent un développement facile et rapide.

What is an Actuator in Spring Boot, and what are its advantages?

L'actionneur est l'une des fonctionnalités de Spring Boot qui vous permet de surveiller ce qui se passe dans une application pendant son exécution.

Pendant le débogage, par exemple, vous pouvez utiliser l'actionneur pour analyser les journaux en permettant l'accès à des fonctionnalités telles que l'utilisation du processeur et l'identification des beans.

De plus, l'actionneur fournit non seulement un accès facile aux terminaux REST prêts pour la production, qui surveillent et gèrent les informations, mais récupèrent également les données sur le Web.

What is thymeleaf, and how to use thymeleaf?

Thymeleaf est le modèle côté serveur de Java qui crée une mise en page de modèle naturelle pour les applications Web Spring et HTML5 Java.

Spring Boot effectuera une configuration automatique de thymeleaf en utilisant la dépendance spring-boot-starter-thymeleaf dans le fichier pom.xml pour servir le contenu Web dynamique.

Pour permettre à Spring Boot de lire et de restituer les modèles thymeleaf ou les fichiers HTML, placez les modèles dans src / main / resources / templates.

Thymeleaf analyse ensuite le fichier index.html et utilise les valeurs réelles que vous transmettez à partir de la classe du contrôleur à la place des valeurs dynamiques disponibles dans le fichier d'index.

Après cela, le message s'affiche dans le navigateur Web dès que l'application Spring Boot s'exécute.

org.springframework.boot spring-boot-starter-thymeleaf

Describe the process of creating a Spring Boot project using Spring Initializer.

Spring Initializr, qui est un outil Web Spring, vous permet de créer un projet Spring Boot en quelques étapes en fournissant les détails du projet.

  1. Rendez-vous sur Initialisation du printemps et remplissez les champs de saisie.
  2. En cliquant sur le Générer lancera le téléchargement du projet.
  3. Extrayez le projet téléchargé du fichier zip et ouvrez-le depuis votre IDE. Depuis l'IDE, accédez à Fichier->Nouveau->Projet à partir de sources existantes-> Spring-boot-app, puis sélectionnez le fichier pom.xml. Cliquez sur l'invite d'importation des modifications pour que le projet se synchronise. Après cela, n'oubliez pas d'aller dans le fichier application.properties et de modifier le numéro de server.port pour server.port=7000.
  4. Maintenant, exécutez l'application à partir de src->main->java->com.gfg.Spring.boot.app

What is JPA in Spring Boot?

Il s'agit d'une spécification Java qui utilise le mappage objet-relation (ORM) pour gérer les données relationnelles et permet l'accès aux données entre l'objet Java ou la classe Java et la base de données relationnelle de l'application.

JPA utilise le Java Persistent Query Language (JPQL), un langage de requête orienté objet qui est également indépendant de la plate-forme.

JPA permet le traitement des requêtes et les transactions d'objets sur la base de données à l'aide de l'API Entity Manager qu'elle fournit.

What is auto-configuration in Spring Boot?

La configuration automatique cherche à automatiser la configuration de l'application Spring Boot à l'aide des dépendances jar que vous ajoutez aux applications.

En fonction des dépendances disponibles dans le Classpath de l'application, la configuration automatique déclarera les objets intégrés du module spécifique au printemps, y compris JPA, et la sécurité du printemps, entre autres.

What are Spring Annotations?

Les annotations Spring font référence à des métadonnées offrant des informations sur un extrait de programme et ajoutent des données supplémentaires à ce programme. Les composants de code, y compris les classes et les méthodes, sont souvent associés à des annotations.

Les annotations n'affectent pas directement le fonctionnement du programme ou l'action ultérieure du code compilé.
Leur syntaxe commence par le '@' symbole.

Spring Boot fournit six principaux types d'annotations, notamment :

  • Annotations de base de printemps
  • Annotations de données de printemps
  • Annotations de haricot de printemps
  • Annotations Web de printemps
  • Annotations de programmation de printemps
  • Annotations de démarrage de printemps

What does Spring Data REST mean?

Spring Data REST expose les ressources dans RESTful qui se trouvent autour de Spring Data Resources en utilisant un code minimal.

L'exemple suivant utilise la méthode POST pour demander du contenu à l'aide de http://localhost/example comme URL et Type de contenu: application / json comme en-tête.

Contenu de la demande :

{
    "name": "Jimmy",
    "Gender": "Male",
    "Age": 23
}

Contenu de la réponse :

{
    "name": "Jimmy",
    "Gender": "Male",
    "Age": 23
    "_links": {
        "self": {
            "href": "http://localhost:8080/example/1"
        },
        "person": {
            "href": "http://localhost:8080/example/1"
         }
    }
}

What is the need for Spring Boot DevTools?

Il s'agit d'un ensemble complet d'outils prédéfinis dont les propriétés sont appliquées aux environnements de développement respectifs pour faciliter le développement et gagner du temps de développement.

Chaque fois que vous modifiez le code dans l'application Spring Boot, la fonctionnalité Spring Boot DevTools redémarre automatiquement. Par conséquent, cela vous évite de redémarrer manuellement votre application chaque fois que vous modifiez votre code.

What is Spring Data?

Les données de printemps visent à donner aux développeurs un accès facile aux technologies d'accès aux données telles que les données relationnelles et non relationnelles et les services de données basés sur le cloud, car elles continuent de conserver les caractéristiques spéciales du magasin de données sous-jacent.

How to tell an auto-configuration to back away when a bean exists?

Ici, vous utiliserez l'annotation @ConditionalOnMissingBean, qui inclut le nom et l'attribut de valeur comme suit.

  • l'attribut value stocke le type de bean à vérifier
  • attribut name qui nomme le bean à vérifier

How to fetch data from the database in Spring Boot?

Nous pouvons accéder aux données d'une base de données MySQL à notre application Spring Boot en procédant comme suit.

Étape 1 : Utilisez l'option create DATABASE person commande pour créer la base de données dans MySQL.

Étape 2 : Dans la base de données, créez une table :

CREATE TABLE person(id INT PRIMARY KEY NOT NULL AUTO_INCREMENT, name VARCHAR(255));

Étape 3 : Créez maintenant une application Spring Boot, puis ajoutez-y les dépendances JDBC, MySQL et Web requises.

Étape 4 : Configurez la base de données à partir du fichier application.properties comme ci-dessous.

spring.datasource.url=jdbc:mysql://localhost:3306/personDetails
spring.datasource.username=example123
spring.datasource.password=example123
spring.jpa.hibernate.ddl-auto=create-drop

Étape 5 : Ensuite, gérons les requêtes dans la classe contrôleur :

package com.person;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class JdbcController {
   @Autowired
   JdbcTemplate jdbc;
   @RequestMapping("/save")
   public String index(){
      jdbc.execute("insert into person (name)values(Trial)");
      return "Name entered Successfully";
   }
}

Enfin, exécutez votre application pendant que vous vérifiez l'entrée de la base de données pour voir les données consultées.

Why do we need Spring Profiles?

Les profils Spring permettent de séparer la configuration d'une application en différentes parties et de les utiliser pour des développements spécifiques.

Les profils Spring évitent également au développeur la gestion des configurations externes spécifiques à l'environnement si les profils Spring n'étaient pas disponibles.

De plus, cela rendrait difficile la synchronisation et signifierait le besoin supplémentaire d'écrire plusieurs composants de type usine qui utiliseraient certaines choses requises en fonction de paramètres spécifiques à l'environnement.

Can we change the port of the embedded Tomcat server in Spring boot?

Oui, nous le pouvons.

Cela se fait en manipulant le application.properties fichier pour inclure le server.port propriété et en lui attribuant un port de votre choix. Spring Boot charge automatiquement le fichier de propriétés de l'application et applique les configurations requises à l'application.

Par exemple, vous pouvez modifier le server.port nombre de la valeur par défaut de 8080 à server.port= 8081.

How do you configure Log4j for logging?

Avec ces quelques étapes simples, nous pouvons configurer Log4j pour la journalisation :

  1. Commencez par créer votre projet Java, puis cliquez avec le bouton droit sur le projet. Aller vers MyEclipse->Fichier->Nouveau->Projet Java pour nommer le projet et cliquez sur Terminer.
  2. Ensuite, cliquez avec le bouton droit sur le nom de votre projet Java et sélectionnez Build Path -> Configure Build Path. Cette étape ajoutera le fichier log4j.
  3. Accédez à la bibliothèque et cliquez sur le Ajouter des JARS externes et sélectionnez le fichier log4j dans le menu déroulant qui apparaît. Cliquez ensuite sur OK.
  4. Créez un nouveau fichier java que vous appellerez log4j.propriétés fichier, puis cliquez sur terminer et ajoutez ce fichier au Classpath.
  5. Cliquez sur Avancé dans le Classpath, puis sélectionnez le option Ajouter des dossiers, et n'oubliez pas de cliquer sur OK.
  6. Vous pouvez maintenant rechercher le fichier log4j.properties, cliquer sur OK et exécuter le projet.
  7. Vérifiez la console pour la sortie ci-dessous.
[main] DEBUG Example – Hello this is a debug message
[main] INFO Example – Hello this is an info message

What is an IoC Container?

Le conteneur IoC (Inversion of Control) est un conteneur Spring central qui implémente automatiquement l'injection de dépendances. Il instancie l'application de la classe et est responsable de la configuration des objets et de l'assemblage des dépendances nécessaires.

Il gère également le cycle de vie de l'objet depuis son instanciation jusqu'à sa destruction.

IoC effectue ces tâches à l'aide de la configuration des métadonnées dans le code Java, XML et les annotations Java.

Le conteneur est appelé inversion de contrôle car il contrôle les objets Java et les cycles de vie de ces objets. Ceci est autrement la tâche d'un développeur.

Explain how to create a Spring Boot application using Maven

Ce processus comporte une série d'étapes.

Étape 1 : Sélectionnez le type de projet.

Étape 2 : Nommez votre projet pour le configurer, puis cliquez sur le bouton Terminer pour créer le projet.

Étape 3 : Maintenant, nous allons configurer le fichier pom.xml du projet Maven pour en créer un projet Spring Boot.

Fichier pom.xml :

<project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">  
  <modelVersion>4.0.0</modelVersion>  
  <groupId>com.javatpoint</groupId>  
  <artifactId>spring-boot-example</artifactId>  
  <version>0.0.1-SNAPS<name>JavaTpoint Spring Boot Example</name>  
</project>  

La configuration implique l'ajout d'un parent au projet Maven. Cela déclarera le projet Maven en tant que projet enfant du projet parent.

<parent>  
    <groupId>org.springframework.boot</groupId>  
    <artifactId>spring-boot-starter-parent</artifactId>  
    <version>1.4.2.RELEASE</version>  
</parent>  

Étape 4 : Ensuite, ajoutez la dépendance Web, spring-boot-starter-web, au fichier pom.xml.

<dependencies>  
    <dependency>  
        <groupId>org.springframework.boot</groupId>  
        <artifactId>spring-boot-starter-web</artifactId>  
    </dependency>  
</dependencies>  

Étape 5: Ajoutez la version Java du projet.

<properties>  
    <java.version>1.8</java.version>  
</properties> 

Étape 6 : Notez que chaque fois que vous ajoutez de nouvelles dépendances, vous devez mettre à jour le projet Maven.

Étape 7 : Rendre le projet Maven exécutable en créant une classe Java dans le paquet src/main/java.

Étape 8 : Ensuite, appelez la méthode d'exécution statique de la classe Spring Application.

Étape 9 : Enfin, exécutez la classe en tant qu'application Java.

What are the advantages of Spring Boot over Spring?

  • La capacité d'amorçage de Spring Boot pour compiler le langage source à l'aide de l'initialiseur de démarrage, une technique appelée amorçage, permet d'économiser de l'espace sur les appareils des utilisateurs et réduit également le temps de chargement de l'application.
  • Contrairement à Spring, Spring Boot permet la gestion des dépendances après l'ajout des dépendances spring-boot sans dépendre du POM parent (modèle d'objet parent) ou du fichier XML.
  • Spring Boot permet également aux développeurs d'utiliser des annotations ou des configurations XML sans avoir besoin d'utiliser des configurations XML.
  • Les développeurs préfèrent Spring Boot pour son code passe-partout réduit requis pour configurer une application. En effet, Spring Boot est livré avec une base de données en mémoire et un serveur Tomcat intégré, ce qui réduit le code passe-partout. Le printemps, en revanche, a plus de code passe-partout.
  • Spring Boot ne nécessite pas nécessairement des fichiers WAR (ressource d'application Web) et ne peut s'appuyer que sur le JAR (ressource Java), qui a une structure plus petite et plus simple et est donc plus utile aux utilisateurs et aux développeurs.
  • Spring Boot intègre également automatiquement des serveurs tels que Tomcat et Jetty ; par conséquent, le développeur n'a pas besoin de configurer manuellement le serveur comme vous êtes censé le faire au printemps.

How to do pagination in Spring Boot?

Le processus de pagination divise les données en sections pour économiser les ressources. Il comporte deux champs, la taille de la page et le numéro de page.

Le processus comporte quelques étapes, notamment :

Étape 1 : La configuration initiale
Entité Consisetupn, nous nommerons Person comme classe de domaine.

@Entity 
public class Person {
    @Id
    private long id;
    private String name; 
}

Étape 2 : Création de référentiel
Ensuite, utilisez un PersonRepository extends PagingAndSortingRepository pouvoir obtenir le findAll(Pageable pageable) et findAll(Sort sort) méthodes de pagination et de tri, respectivement.

public interface PersonRepository extends PagingAndSortingRepository<Person, Integer> {
    List<Product> findAllByPrice(double price, Pageable pageable);
}

Étape 3 : Étape de pagination
La première étape ici consiste à créer un Demande de page objet; en passant le numéro de page et la taille de la page comme demandé qui implémente le paginable interface.

Pageable firstPageWithTwoElements = PageRequest.of(0,2);
Pageable secondPageWithThreeElements = PageRequest.of(1,3);

Alors passez ceci Demande de page objet à la méthode du référentiel en tant que paramètre.

Page<Person> allProducts = personRepository.findAllByPrice(findPageWithTwoElements);
List<Items> allTwoDollarItems = itemsRepository.findAllByPrice(2, secondPageThreeElements) 

Par défaut, le findAll(Pageable pageable) La méthode retournera un Page<T> objet.

Explain how to register a custom auto-configuration

Sous le fichier META-INF/spring.factories de la clé @EnableAutoConfiguration, mentionnez le nom complet. Cette étape enregistre la classe de configuration automatique.

org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.baeldung.autoconfigure.CustomAutoConfiguration

Construire le projet à l'aide de Maven vous demandera de placer le fichier dans le ressources/META-INF répertoire.

What is bootstrapping in Spring Boot?

L'amorçage est le processus d'exécution de la logique dans l'application Spring Boot au démarrage.
L'initialisateur de démarrage compile le langage source dans Spring Boot. Ce processus économise de l'espace sur l'appareil et réduit également le temps de chargement de l'application.

Derniers mots 👨‍💻

Eh bien, cet article a couvert certaines questions de Spring Boot que les enquêteurs vous poseront probablement lors de votre entretien et les réponses pour vous aider à le réussir en toute confiance. Nous espérons que vous décrocherez l'emploi de vos rêves !

Vous voudrez peut-être aussi apprendre quelques conseils pertinents à partir des questions posées lors d'une Entretien Java.

Bonne chance ! 🙂

Merci à nos commanditaires
Plus de bonnes lectures sur Carrière
Alimentez votre entreprise
Certains des outils et services pour aider votre entreprise à se développer.
  • Invicti utilise Proof-Based Scanning™ pour vérifier automatiquement les vulnérabilités identifiées et générer des résultats exploitables en quelques heures seulement.
    Essayez Invicti
  • Web scraping, proxy résidentiel, proxy manager, web unlocker, moteur de recherche et tout ce dont vous avez besoin pour collecter des données Web.
    Essayez Brightdata
  • Semrush est une solution de marketing numérique tout-en-un avec plus de 50 outils de référencement, de médias sociaux et de marketing de contenu.
    Essayez Semrush
  • Intruder est un scanner de vulnérabilités en ligne qui détecte les failles de cybersécurité de votre infrastructure, afin d'éviter des violations de données coûteuses.
    Essayez Intruder