[JAVA] Créez un site Web avec Spring Boot + Gradle (jdk1.8.x)

Qu'est-ce que c'est?

Comment créer un site Web en Java? Dans la première étape, le livrable n'affichera qu'une seule page HTML. Cet article vise à faire fonctionner un serveur Web et à l'afficher sur un navigateur. Si cela fonctionne, je pense que c'est une bonne idée de faire des corrections et de s'en souvenir.

Configuration système confirmée

En août 2020, nous avons confirmé l'opération avec les exigences suivantes.

L'exemple de code utilisé ici peut être trouvé sur GitHub.

1. Procédure: essayez d'abord de vous déplacer

1.1. Créer et déplacer le répertoire du projet

Terminal


$ mkdir -p helloworld; cd $_

1.2. Initialiser le projet Gradle

Terminal


$ gradle init

À partir de là, nous procéderons de manière interactive, alors sélectionnez comme suit.

  1. Select type of project to generate >> 2: application
  2. Select implementation language >> 3: Java
  3. Select build script DSL >> 1: Groovy
  4. Select test framework >> 1: JUnit 4
  5. Project name (default: helloworld) >> helloworld
  6. Source package (default: ) >> helloworld

Ceci termine l'initialisation du projet Gradle.

1.3. Cloner l'exemple de code

Terminal


$ git clone https://github.com/ryoyakawai/java_gradle_springboot_helloworld.git

1.4. Essayez de démarrer le serveur Web

Terminal


$ cd java_gradle_springboot_helloworld
$ gradle bootRun

Si vous le démarrez sans aucune erreur, vous devriez voir ce qui suit dans Terminal:

Terminal


> Task :bootRun

  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.2.0.RELEASE)

2020-08-18 15:47:55.672  INFO 64412 --- [           main] c.e.helloworld.HelloworldApplication     : Starting HelloworldApplication on S1031198.local with PID 64412 (/..../java_gradle_springboot_helloworld/build/classes/java/main started by ryoya.kawai in /..../java_gradle_springboot_helloworld)
2020-08-18 15:47:55.674  INFO 64412 --- [           main] c.e.helloworld.HelloworldApplication     : No active profile set, falling back to default profiles: default
2020-08-18 15:47:56.180  INFO 64412 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2020-08-18 15:47:56.187  INFO 64412 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2020-08-18 15:47:56.187  INFO 64412 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.27]
2020-08-18 15:47:56.228  INFO 64412 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2020-08-18 15:47:56.229  INFO 64412 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 527 ms
2020-08-18 15:47:56.323  INFO 64412 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2020-08-18 15:47:56.422  INFO 64412 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2020-08-18 15:47:56.424  INFO 64412 --- [           main] c.e.helloworld.HelloworldApplication     : Started HelloworldApplication in 1.139 seconds (JVM running for 1.368)
<=========----> 75% EXECUTING [10s]
> :bootRun

Vérifiez ici le fonctionnement du navigateur.

Si vous accédez à http: // localhost: 8080 avec un navigateur et que ce qui suit est affiché, cela signifie qu'il fonctionne normalement comme un serveur Web. sample00

2. Description du contenu

2.1 À propos des fichiers

Il s'agit de la structure de fichier immédiatement après le clonage dans "1.3. Exemple de code de clonage". J'ai fait quelques changements après avoir implémenté "1.2. Initialiser le projet Gradle" dans la partie où l'explication est écrite sur le côté droit du fichier et du répertoire dans la figure ci-dessous.

├── build.gradle (Doit être modifié: fichier de configuration Gradle)
├── settings.gradle
└── src
    ├── main
    │   ├── java
    │   │   └── helloworld  (Les éléments suivants doivent être modifiés: Code du programme)
    │   │       ├── HelloworldApplication.java
    │   │       ├── HelloworldController.java
    │   │       ├── HelloworldErrorController.java
    │   │       └── HelloworldServletInitializer.java
    │   ├── resources
    │   │   ├── application.yml (Doit être modifié)
    │   │   ├── static
    │   │   │   └── assets  (Ce qui suit est nouvellement créé)
    │   │   │       └── sample-300x300.jpg
    │   │   └── templates
    │   │       ├── error.html (Doit être modifié: HTML)
    │   │       └── helloworld.html (Doit être modifié: HTML)
    │   └── webapp
    │       └── WEB-INF
    │           └── appengine-web.xml
    └── test
        └── java
            └── helloworld
                └── HelloworldApplicationTests.java  (Doit être modifié: fichier de test)

2.2. Description de chaque fichier

--build.gradle: écrivez les paramètres de construction. Des modifications sont nécessaires si nécessaire. --settings.gradle: Décrivez le nom du projet qui sera le point d'entrée.

src> main> java> helloworld Les fichiers suivants

--HelloworldApplication.java: déclare utiliser le framework Spring Boot. --HelloworldController.java: Classe de contrôleur. Il décrit principalement le chemin d'accès et ce qui est affiché. --HelloworldErrorController.java: Une classe qui gère les erreurs d'application. Il doit être modifié en conséquence. --HelloworldServletInitializer.java: classe d'implémentation WebApplicationInitializer requise dans l'environnement où le fichier WAR est déployé et exploité. (Bien qu'il existe, il n'est pas utilisé dans l'opération ici et n'est pas nécessaire à l'origine)

src> main> resources Les fichiers suivants

Placez les fichiers HTML, etc. dans ce répertoire.

--ʻApplication.yml: fichier YML qui définit le message. --templates> error.html: HTML à afficher lorsqu'une erreur se produit. --templates> helloworld.html: HTML à afficher pendant le fonctionnement normal. --static> assets`: les images doivent être placées ici.

References

Recommended Posts

Créez un site Web avec Spring Boot + Gradle (jdk1.8.x)
Créez une application de recherche simple avec Spring Boot
Créer un serveur API Web avec Spring Boot
Créer un environnement de développement Spring Boot avec docker
Créer un micro service avec Spring Boot
Créez un site de démonstration simple avec Spring Security avec Spring Boot 2.1
Créez une application avec Spring Boot 2
Créez une application avec Spring Boot
Créez un lot à la demande simple avec Spring Batch
(IntelliJ + gradle) Hello World avec Spring Boot
Créez un projet de développement d'application Spring Boot avec la commande cURL + tar
Exécutez l'application Scala avec Spring Boot via Gradle
Créez une application Spring Boot à l'aide d'IntelliJ IDEA
Créez des projets Spring Boot par environnement avec Gradle
Conseils Java - Créez un projet Spring Boot avec Gradle
Créez une application CRUD avec Spring Boot 2 + Thymeleaf + MyBatis
Exécutable serveur avec Spring gradle Comment créer JAR et WAR
Créez votre propre utilitaire avec Thymeleaf avec Spring Boot
Je voulais classer la botte à ressort dans un multi-projet
Créer un environnement Spring Boot avec Windows + VS Code
Télécharger avec Spring Boot
Créez un serveur Spring Cloud Config en toute sécurité avec Spring Boot 2.0
[Compatible JUnit 5] Ecrire un test en utilisant JUnit 5 avec Spring boot 2.2, 2.3
Comment créer un projet Spring Boot dans IntelliJ
[Spring Boot] Comment créer un projet (pour les débutants)
Implémentez une API Rest simple avec Spring Security avec Spring Boot 2.0
[JUnit 5] Ecrivez un test de validation avec Spring Boot! [Test de paramétrage]
Un mémorandum lors de la création d'un service REST avec Spring Boot
Créer Restapi avec Spring Boot (jusqu'à l'exécution de l'application)
J'ai écrit un test avec Spring Boot + JUnit 5 maintenant
Générer un code à barres avec Spring Boot
Hello World avec Spring Boot
Implémenter GraphQL avec Spring Boot
Démarrez avec Spring Boot
Bonjour tout le monde avec Spring Boot!
Multi-projets Spring Boot 2 avec Gradle
Exécutez LIFF avec Spring Boot
Connexion SNS avec Spring Boot
Téléchargement de fichiers avec Spring Boot
Spring Boot commençant par copie
Créez un terrain de jeu avec Xcode 12
Spring Boot à partir de Docker
Hello World avec Spring Boot
Définir des cookies avec Spring Boot
Utiliser Spring JDBC avec Spring Boot
Ajouter un module avec Spring Boot
Premiers pas avec Spring Boot
Envoyer du courrier avec Spring Boot
Une histoire remplie des bases de Spring Boot (résolu)
Créez une application Web Hello World avec Spring Framework + Jetty
Faisons une API simple avec EC2 + RDS + Spring boot ①
Implémentez une API Rest simple avec Spring Security & JWT avec Spring Boot 2.0
Créez un environnement Vue3 avec Docker!
Utiliser l'authentification de base avec Spring Boot
Construire un projet Java avec Gradle
◆ Spring Boot + note de construction de l'environnement gradle
gRPC sur Spring Boot avec grpc-spring-boot-starter
Déploiement à chaud avec le développement Spring Boot