Question d'entretien de démarrage de printemps 1

insérez la description de l'image ici
Spring Boot est le meilleur framework Java pour les microservices, nous vous recommandons de devenir un expert Spring Boot.

Question une

Quelle est la différence entre Spring Boot, Spring MVC et Spring ?
SpringFrame
La fonctionnalité la plus importante de SpringFramework est l'injection de dépendances. Tous les SpringModules sont soit une injection de dépendance, soit une inversion de contrôle IOC.

Lorsque nous utilisons correctement DI ou IOC, nous pouvons développer des applications faiblement couplées. Les tests unitaires d'applications faiblement couplées peuvent être effectués facilement.

SpringMVC
Spring MVC fournit une approche découplée du développement d'applications Web. En utilisant des concepts simples comme DispatcherServlet, MoudlAndView et ViewResolver, le développement d'applications Web deviendra très simple.

Le problème avec SpringBoot
Spring et SpringMVC est qu'un grand nombre de paramètres doivent être configurés.



/WEB-INF/views/


.jsp

<mvc:resources mapping="/webjars/**" location="/webjars/"/>
Copiez
Spring Boot pour résoudre ce problème avec un projet de configuration et de démarrage automatique. Pour créer plus rapidement des applications prêtes pour la production, Spring Boot fournit certaines fonctionnalités non fonctionnelles.

question deux

Qu'est-ce que la configuration automatique ?
Le problème avec Spring et SpringMVC est qu'il y a beaucoup de paramètres à configurer.



/WEB-INF/views/.jsp <


mvc

:resources mapping="/webjars/**" location="/webjars/"/>
Copier
Pouvons-nous apporter plus d'intelligence ? Pouvons-nous configurer automatiquement certains beans lorsqu'un JAR MVC est ajouté à l'application ?

Spring examine (frameworks disponibles sur CLASSPATH ) la configuration d'une application existante. Sur cette base, Spring Boot fournit la configuration de base nécessaire pour configurer l'application et le framework. C'est la configuration automatique.

question trois

Qu'est-ce que Spring Boot Stater ?
Un lanceur est un ensemble pratique de descripteurs de dépendance qu'il peut placer dans son propre programme. Vous obtenez toutes les technologies Spring et associées dont vous avez besoin en un seul endroit, sans avoir besoin de rechercher dans des exemples de code et de copier-coller des charges de descripteurs dépendants.

Par exemple, si vous souhaitez utiliser Spring et JPA pour accéder à une base de données, il vous suffit que votre projet inclue la dépendance spring-boot-starter-data-jpa et vous êtes prêt à partir.

question quatre

Pouvez-vous donner un exemple pour en savoir plus sur les Staters ?

Prenons un exemple de Stater - Spring Boot Stater Web.

Si vous souhaitez développer une application Web ou une application qui expose des services REST. Spring Boot Start Web est préférable. Créons un projet rapide Spring Boot Start Web à l'aide de Spring Initializr.

Dépendances pour Spring Boot Start Web

org.springframework.boot spring-boot-starter-web Copy Les captures d'écran ci-dessous sont les différentes dépendances ajoutées à notre application

insérez la description de l'image ici

Les dépendances peuvent être divisées en

Printemps - noyau,haricots,contexte,aop

Web MVC - (Spring MVC)

Jackson - pour la liaison JSON

Validation - Hibernate, API de validation

Conteneur de servlet intégré - Tomcat

Journalisation - retour de session, slf4j

Toute application Web classique utilise toutes ces dépendances. Spring Boot Starter Web est pré-emballé avec ces dépendances.

En tant que développeur, je n'ai plus à me soucier de ces dépendances et de leurs versions compatibles.

Cinquième question

Quelles autres options de projet de démarrage Spring Boot fournit-il ?
Spring Boot fournit également d'autres projets de démarrage qui incluent des dépendances typiques pour développer un type particulier d'application.

spring-boot-starter-web-services - Services Web SOAP

spring-boot-starter-web - Applications Web et RESTful

spring-boot-starter-test - tests unitaires et d'intégration

spring-boot-starter-jdbc - JDBC traditionnel

spring-boot-starter-hateoas - Ajoute la fonctionnalité HATEOAS aux services

spring-boot-starter-security - Authentification et autorisation avec SpringSecurity

spring-boot-starter-data-jpa - Spring Data JPA avec Hibeernate

spring-boot-starter-data-rest - Expose des services REST simples à l'aide de Spring Data REST

question six

Comment Spring crée-t-il rapidement des applications prêtes pour la production ?
Spring Boot concerne les applications rapides prêtes pour la production. À cette fin, il fournit des fonctionnalités non fonctionnelles prêtes à l'emploi telles que la mise en cache, la journalisation, la surveillance et les serveurs intégrés.

spring-boot-starter-actuator - utilise certaines fonctionnalités avancées telles que les applications de surveillance et de traçage

spring-boot-starter-undertow, spring-boot-starter-jetty, spring-boot-starter-tomcat - choisissez votre conteneur de servlet intégré spécifique

spring-boot-starter-logging - Journalisation avec logback

spring-boot-starter-cache - Active la prise en charge de la mise en cache de Spring Framework

Quelle est la version Java minimale requise pour Spring2 et Spring5 ?

Spring Boot 2.0 nécessite Java8 ou une version ultérieure. Java6 et Java7 ne sont plus pris en charge.

Lecture recommandée:

https://github.com/spring-projects/spring-boot/wiki/Spring-Boot-2.0.0-M1-Release-Notes

question sept

Quel est le moyen le plus simple de créer un projet Spring Boot ?
Spring Initializr est un excellent outil pour démarrer des projets Spring Boot.

Comme indiqué dans la figure ci-dessus, nous devons effectuer quelques étapes :
connectez-vous à Spring Initializr et sélectionnez comme suit :
sélectionnez com.in28minutes.springboot en tant que groupe
, sélectionnez studet-services en tant que composant,
sélectionnez les dépendances suivantes, cliquez sur
Web
Actuator
DevTools
Generate GenerateProject
pour importer le projet dans Eclipse. Fichier - Importer - Projet Maven existant
Question 8

Est-ce que Spring Initializr est le seul moyen de créer des projets Spring Boot ?
Non.

Spring Initiatlizr facilite la création de projets Spring Boot, mais vous pouvez également démarrer un projet en configurant un projet maven et en ajoutant les bonnes dépendances.

Dans nos cours de printemps, nous utilisons deux approches pour créer des projets.

La première méthode est start.spring.io.
Une autre méthode consiste à le définir manuellement dans le projet intitulé "Application Web de base".

Configurer manuellement un projet Maven

Voici quelques étapes importantes :

Dans Eclipse, utilisez File - New Maven Project pour créer un nouveau projet
et ajouter des dépendances.
Ajouter le plugin maven.
Ajoutez la classe d'application Spring Boot.
Voilà, les préparatifs sont faits !

Question neuf

Pourquoi avons-nous besoin de spring-boot-maven-plugin ?
spring-boot-maven-plugin fournit des commandes pour empaqueter ou exécuter des applications comme les jars.

spring-boot:run exécute votre application Spring Booty.
spring-boot:repackage reconditionne votre package jar ou war pour le rendre exécutable
spring-boot:start et spring-boot:stop gèrent le cycle de vie des applications Spring Boot (également pour les tests d'intégration).
spring-boot:build-info génère des informations de construction que l'exécuteur peut utiliser.
Question dix

Comment recharger automatiquement mon application avec SpringBoot ?
Utilisez les outils de développement Spring Boot.

L'ajout des outils de développement Spring Boot à votre projet est simple.

Ajoutez les dépendances suivantes à votre projet Spring Boot pom.xml

org.springframework.boot spring-boot-devtools copie d'exécution redémarrez l'application, puis c'est bon.

De plus, si vous souhaitez charger automatiquement des pages, jetez un œil à FiveReload

http://www.logicbig.com/tutorials/spring-framework/spring-boot/boot-live-reload/.
Lorsque j'ai testé, j'ai trouvé la vulnérabilité LiveReload. Si vous l'avez également trouvée pendant le test, veuillez nous en informer.

Question onze

Qu'est-ce qu'un serveur embarqué ? Pourquoi utiliser un serveur embarqué
Réfléchissez à ce qu'il faut pour déployer une application sur votre machine virtuelle.

Étape 1 : Installer Java

Partie 2 : Installer le serveur Web ou d'application (Tomat/Wbesphere/Weblogic, etc.)

Partie 3 : Déployer le package Application War

Si nous voulons simplifier ces étapes, comment devrions-nous le faire ?

Réfléchissons à la façon d'intégrer le serveur à l'application ?

Vous n'avez besoin que d'une machine virtuelle avec Java installé, et vous pouvez déployer des applications directement dessus,
n'est-ce pas cool ?

Cette idée est à l'origine des serveurs embarqués.

Lorsque nous créons une application déployable, nous intégrons le serveur (par exemple, tomcat) dans le serveur déployable.

Par exemple, pour une application Spring Boot, vous pouvez générer un jar d'application qui inclut Embedded Tomcat. Vous pouvez ensuite exécuter l'application Web comme vous le feriez avec une application Java normale.

Un serveur intégré est l'endroit où notre unité exécutable contient le binaire du serveur (par exemple, tomcat.jar).

Question douze

Comment ajouter du code JS commun dans Spring Boot ?
Sous le dossier source, créez un dossier nommé static. Ensuite, vous pouvez y mettre votre contenu statique.

Par exemple, le chemin vers myapp.js est resources\static\js\myapp.js

Vous pouvez vous référer à la façon dont il est utilisé dans jsp


复制
错误:Le navigateur HAL me donne une erreur non autorisée - Une authentification complète est requise pour accéder à cette ressource.

Comment corriger cette erreur ?

{ "timestamp": 1488656019562, "status": 401, "error": "Unauthorized", "message": "Une authentification complète est requise pour accéder à cette ressource.", "path": "/beans" } Copiez deux méthodes :







Méthode 1 : Désactivez
application.properties de vérification de la sécurité

management.security.enabled : FAUX Méthode
de réplication
2 : rechercher le mot de passe dans le journal et le transmettre à l'en-tête de la requête
Question 13

Qu'est-ce que la date du printemps ?
De : //projects.spring.io/spring-data/

La mission de Spring Data est de fournir un modèle de programmation familier, cohérent et basé sur Spring pour l'accès aux données tout en garantissant la spécificité du stockage de données sous-jacent. Cela facilite l'utilisation des technologies d'accès aux données, des bases de données relationnelles et non relationnelles, des frameworks de réduction de carte et des services de données basés sur le cloud.

Pour le rendre un peu plus facile, Spring Data fournit une interface Abstractions qui n'est pas limitée par la source de données sous-jacente.

Voici un exemple

interface TodoRepository extend CrudRepository<Todo, Long> { Copier Vous pouvez définir une bibliothèque simple pour insérer, mettre à jour, supprimer et récupérer des éléments à faire sans écrire beaucoup de code.

Je suppose que tu aimes

Origine blog.csdn.net/m0_54861649/article/details/126665787
conseillé
Classement