[JAVA] Introduction à Spring Boot, partie 1

Cet article est [ce blog](https://yk0807.com/techblog/2019/05/06/spring-boot%E5%85%A5%E9%96%80%E3%81%9D%E3%81 % AE1 /) est déplacé vers Qiita. Cela ne fait qu'un peu plus d'un mois que j'ai commencé à utiliser Spring Boot, et il y a peut-être des explications inappropriées, mais j'apprécierais que vous le souligniez.

Dans WEB + DB PRESS 106, il y avait un article Spring Boot sur la création d'un service de gestion des tâches et du service d'analyse et de distribution Qiita. Pour le moment, j'ai essayé le service de gestion des tâches. Le code source créé en imitant l'article de WEB + DB PRESS cette fois-ci peut être trouvé à ici. Nous prévoyons d'apporter diverses améliorations à l'avenir. Au fait, le produit fini (?) Ressemble à ceci. Spring_todo.png

1. Qu'est-ce que Spring Boot?

Un framework Web Java appelé Spring Framework a été créé en 2003 et Spring Boot a été créé en 2014 pour faciliter son utilisation. [DI (Dependency Injection)](https://ja.wikipedia.org/wiki/%E4%BE%9D%E5%AD%98%E6%80%A7%E3%81%AE%E6%B3 Il est caractérisé en utilisant le concept de% A8% E5% 85% A5).

2. Ce dont vous avez besoin pour développer avec Spring Boot

3. Une description approximative de la configuration de Spring Boot

Ici, je vais vous expliquer la configuration de Spring Boot d'une manière similaire à celle de Laravel. Dans Spring Boot, contrairement à Laravel, la structure des dossiers n'est pas fixe, vous devez donc penser à la structure vous-même. Les sources Java sont placées sous src / main / java, et les non-Java (html, css, js, etc.) sont placées sous src / main / resources. La source des tests avec JUnit se trouve sous src / test.

src / main / java (fichier source Java) -Application (Il s'agit de la fonction principale. Ajoutez @SpringBootApplication à l'annotation. Cette fonction principale est appelée lorsque le projet est exécuté. Est-elle proche de l'index.php de Laravel?) -Entity (Définition de données. Ajoutez une annotation @Entity. Importez lombok.Data et ajoutez @Data pour générer automatiquement des getters et des setters. De plus, [JPA](https: //ja.wikipedia) Si vous utilisez .org / wiki / Java_Persistence_API) (technologie standard pour gérer les bases de données en Java) et ajoutez @Table (nom = “nom de la table”), la table sera créée automatiquement. Modèle de Laravel (directement sous l'application) Ce mec) + migration?) -Repository (Il sert à effectuer des opérations de base de CRUD (créer, lire, mettre à jour, supprimer) des données définies dans Entity, et est défini comme une interface qui hérite de JpaRepository. C'est une fonction que Laravel n'a pas.) -Controller (contrôleur qui gère le C de MVC, similaire à celui de Laravel, mais implémente le traitement des données, etc. en appelant le service expliqué ci-dessous. Ajoutez l'annotation @Controller à la classe. Aussi, la méthode Get Ensuite, vous pouvez mapper la requête en annotant @GetMapping (valeur = ”(URL)”) à la méthode et @PostMapping (valeur = ”(URL)”) à la méthode de la méthode Post, donc Laravel. Ensuite, il peut s'agir d'une image proche des routes Controller +) -Service (Il implémente le traitement à effectuer sur les données et le transmet au contrôleur. Ce n'est pas non plus dans Laravel, mais si vous osez le dire, cela peut être une image qui se connecte entre le modèle et le contrôleur. Annotation @Service Le traitement réel est implémenté en appelant l'opération CRUD de Repository.) -Form (une classe pour passer la valeur saisie dans le formulaire html au contrôleur. Il semble que la validation se fait souvent ici. Demande en Laravel?)

src / main / resources (frontal, etc.) -Thymeleaf (lu comme feuille de temps. Il semble être nommé d'après l'herbe de la plante. Ce qu'on appelle le moteur de modèle. Blade est la valeur par défaut pour Laravel, mais Spring Boot semble prendre en charge plusieurs autres moteurs de modèle. ) -Application.properties (Il a des valeurs de paramètres d'application, et je pense que les fichiers sous config sont proches les uns des autres dans Laravel. Les paramètres de base de données à utiliser sont également définis ici.)

Comme mentionné ci-dessus, je l'ai écrit à la hâte, c'était donc une explication approximative, mais quand j'écris la partie 2, je pense que je devrais l'écrire un peu plus en détail.

Recommended Posts

Introduction à Spring Boot, partie 1
Introduction à Spring Boot ② ~ AOP ~
[Introduction à Spring Boot] Vérification de la validation du formulaire
Introduction à Spring Boot + In-Memory Data Grid
[Introduction à Spring Boot] Fonction d'authentification avec Spring Security
Introduction à Ratpack (7) --Guice & Spring
[Introduction à Spring Boot] Soumettez un formulaire à l'aide de thymeleaf
Introduction à Linux Container / Docker (Partie 1)
Introduction à Linux Container / Docker (Partie 2)
Comment utiliser ModelMapper (Spring boot)
Mise à niveau de la botte à ressort de la série 1.5 à la série 2.0
Spring Boot à partir de zéro Partie 2
Spring Boot à partir de zéro Partie 1
L'histoire de la montée de Spring Boot de la série 1.5 à la série 2.1 part2
Introduction à Ruby 2
Introduction à Spring Boot x Open API ~ Open API créée avec le modèle d'écart de génération ~
Spring Fox ① Introduction
Introduction à la sortie pratique rapide Chapitre 5 Partie 2
Défi Spring Boot
Introduction à web3j
Modifications lors de la migration de Spring Boot 1.5 vers Spring Boot 2.0
Introduction à Micronaut 1 ~ Introduction ~
[Java] Introduction à Java
Introduction à la migration
Modifications lors de la migration de Spring Boot 2.0 vers Spring Boot 2.2
Forme de botte de printemps
Introduction à Java
Spring Boot Rappelez-vous
gae + botte à ressort
Introduction à Doma
Comment diviser un fichier de message Spring Boot
Ajoutez une botte de printemps et un dégradé à éclipse
JSUG Study Group 2018 Part 4 Spring 5 & Spring Boot 2 Impressions pratiques
Comment utiliser MyBatis2 (iBatis) avec Spring Boot 1.4 (Spring 4)
Comment utiliser h2db intégré avec Spring Boot
Comment réduire l'image de Spring Boot Docker
Ingénieur en route vers Java Partie 1 Introduction et construction de l'environnement
L'histoire de la montée de la série Spring Boot 1.5 à la série 2.1
Essayez d'implémenter la fonction de connexion avec Spring Boot
Comment ajouter un chemin de classe dans Spring Boot
Comment se lier avec un fichier de propriétés dans Spring Boot
Essayez d'automatiser la migration avec Spring Boot Flyway
[Java] Article pour ajouter une validation avec Spring Boot 2.3.1.
Je voulais classer la botte à ressort dans un multi-projet
Appliquer Twitter Bootstrap 4 à Spring Boot 2 à l'aide de Webjars
[Spring Boot] Comment se référer au fichier de propriétés
Spring Boot - Comment définir le délai d'expiration de la session
Fiche d'apprentissage SPRING BOOT 01
Introduction aux fichiers JAR
Botte de printemps + Heroku Postgres
Introduction de Docker - Partie 1--
Introduction à Ratpack (8) - Session
Rédaction de mémo de démarrage de printemps (1)
Introduction à l'arithmétique des bits
Introduction à Ratpack (6) - Promesse
Introduction à Ratpack (9) --Thymeleaf
Première botte à ressort (DI)
Fiche d'apprentissage SPRING BOOT 02