[JAVA] Essayez d'utiliser Spring Boot avec VS Code

1. Introduction

Installation d'extension

Installez les extensions suivantes. Puisque Java est utilisé, les fonctions d'extension Java sont collectées Java Extension Pack et les extensions Spring Boot sont collectées. Incluez le pack d'extension Spring Boot (https://marketplace.visualstudio.com/items?itemName=Pivotal.vscode-boot-dev-pack). Désactivez les extensions inutiles si nécessaire.

Créer un projet

En installant Spring Boot Tools, vous pouvez utiliser les commandes Spring Boot avec VS Code.

--Exécuter Spring Initializr: Générer un projet Maven dans la palette de commandes (créer des projets de manière interactive)

--Sélectionnez Java

Structure du répertoire


  src/
    └ main/
    │  ├ java/
    │  │  └ com/
    │  │     └ example/
    │  │        └ {Nom de l'application}/
    │  │          └ DemoApplication.java
    │  └ resource/
    │     ├ static/
    │     └ templates/
    └ test/
  target/
  .gitignore
  mvnw
  mvnw.cmd
  pom.xml

Exécution de l'application

--Créez IndexController.java dans le répertoire src / main / java / com / example / {nom de l'application} / controller

IndexController.java


  package com.example.{Nom de l'application}.controller;
  
  import org.springframework.stereotype.Controller;
  import org.springframework.ui.Model;
  import org.springframework.web.bind.annotation.RequestMapping;
  
  @Controller
  public class IndexController {
  
      @RequestMapping("/")
      public String index(Model model) {
          model.addAttribute("msg", "Hello");
          return "index";
      }
  }

--Créez index.html dans le répertoire src / main / resources / templates

index.html


  <!DOCTYPE html>
  <html>
  <head>
      <title>domicile</title>
  </head>
  <body>
      <div>
          <p>contenu</p>
      </div>
  </body>
  </html>

--Sélectionnez `Déboguer> Démarrer le débogage``

--Sélectionnez java dans la sélection d'environnement (première fois uniquement) --launch.json est généré (première fois seulement)

--Accès http: // localhost: 8080 /

2. Création d'en-têtes et de pieds de page

Ajouter une dépendance

Ajoutez thymeleaf-layout-dialect à la dépendance pour utiliser la fonction Layout Dialect de thymeleaf, qui est le moteur de template de Spring Boot. Ajoutez également bootstrap et jquery.

--Ajout du contenu suivant à pom.xml

  <dependency>
  	<groupId>nz.net.ultraq.thymeleaf</groupId>
    <artifactId>thymeleaf-layout-dialect</artifactId>
  </dependency>
  
  <dependency>
    <groupId>org.webjars</groupId>
    <artifactId>bootstrap</artifactId>
    <version>3.3.7</version>
  </dependency>
  
  <dependency>
    <groupId>org.webjars</groupId>
    <artifactId>jquery</artifactId>
    <version>1.12.4</version>
  </dependency>

Créer un modèle

la mise en oeuvre

--Créez src / main / resources / template / layouts / layout.html.

  <!DOCTYPE html>
  <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:th="http://www.thymeleaf.org"
          xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
  <head>
      <title layout:title-pattern="$CONTENT_TITLE | $LAYOUT_TITLE">Thymeleaf de layout</title>
      <meta charset="UTF-8" />
      <meta http-equiv="X-UA-Compatible" content="IE=edge" />
      <meta name="viewport" content="width=device-width, initial-scale=1" />
      <link rel="stylesheet" media="all" th:href="@{/webjars/bootstrap/3.3.7/css/bootstrap.min.css}" />
      <link rel="stylesheet" media="all" th:href="@{/css/style.css}" />
  </head>
  <body>
      <div layout:replace="~{layouts/header::header}"></div>
  
      <div id="content" class="clearfix">
          <div class="container">
              <div layout:fragment="content" th:remove="tag"></div>
          </div>
      </div>
      <div layout:replace="~{layouts/footer::footer}"></div>
  
      <!-- scripts -->
      <script type="text/javascript" th:src="@{/webjars/jquery/1.12.4/jquery.min.js}"></script>
      <script type="text/javascript" th:src="@{/webjars/bootstrap/3.3.7/js/bootstrap.min.js}"></script>
  </body>
  </html>

--Créez src / main / resources / template / layouts / header.html.

header.html


  <!DOCTYPE html>
  <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:th="http://www.thymeleaf.org"
          xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
  <body>
      <nav class="navbar navbar-default" layout:fragment="header">
          <div class="container-fluid">
              <div class="navbar-header">
                  <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navigation">
                      <span class="icon-bar"></span>
                      <span class="icon-bar"></span>
                      <span class="icon-bar"></span>
                  </button>
                  <a class="navbar-brand" href="/">Pratique du Spring Boot</a>
              </div>
              <div class="collapse navbar-collapse" id="navigation">
                  <p class="navbar-text navbar-right">Se connecter</p>
              </div>
          </div>
      </nav>
  </body>
  </html>

--Créez src / main / resources / template / layouts / footer.html.

footer.html


  <!DOCTYPE html>
  <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:th="http://www.thymeleaf.org"
          xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout">
  <body>
      <div id="footer" layout:fragment="footer">
          <footer class="text-center">
              <small class="text-muted">Copyright(C) koukibuu3, All rights reserved.</small>
          </footer>
      </div>
  </body>
  </html>
  

--Modifiez src / main / resources / templates / index.html comme suit.

index.html


  <!DOCTYPE html>
  <html
      xmlns:th="http://www.thymeleaf.org"
      xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
      layout:decorate="~{layouts/layout}">
  
  <head>
      <title>domicile</title>
  </head>
  <body>
      <div layout:fragment="content">
          <p>contenu</p>
      </div>
  </body>
  </html>

Commentaire

En saisissant ce qui suit dans layouts / header.html,

header.html(partie)


<div layout:fragment="header"><!--Contenu--></div>

Les balises suivantes entrées dans layout.html sont remplacées.

layout.html(partie)


<div layout:replace="~{layouts/header::header}"></div>

La description de layouts / layout.html peut être reflétée en écrivant ce qui suit sur le côté de la page individuelle (index.html) qui lit la mise en page.

index.html(partie)


<html
    xmlns:th="http://www.thymeleaf.org"
    xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
    layout:decorate="~{layouts/layout}">

Recommended Posts

Essayez d'utiliser Spring Boot avec VS Code
Programmation Spring Boot avec VS Code
Essayez d'utiliser Spring Boot Security
Créer un environnement Spring Boot avec Windows + VS Code
Essayez d'utiliser OpenID Connect avec Keycloak (application Spring Boot)
Essayez d'utiliser l'API de recherche de code postal avec Spring Boot
Traitement asynchrone avec Spring Boot en utilisant @Async
Partie 1: Essayez d'utiliser la connexion OAuth 2.0 prise en charge par Spring Security 5 avec Spring Boot
Lombok avec VS Code
Télécharger avec Spring Boot
Essayez d'utiliser Spring JDBC
Exécuter un projet Spring Boot avec VS Code
Essayez l'authentification LDAP avec Spring Security (Spring Boot) + OpenLDAP
En utilisant Gradle avec VSCode, compilez Java → exécutez
Essayez d'automatiser la migration avec Spring Boot Flyway
Essayez de déboguer un programme Java avec VS Code
Essayez Spring Boot de 0 à 100.
Générer un code à barres avec Spring Boot
Hello World avec Spring Boot
[Note] Fichier de configuration lors de l'utilisation de Logback avec Spring Boot
Implémenter GraphQL avec Spring Boot
Essayez d'utiliser GloVe avec Deeplearning4j
Gestion Docker avec VS Code
Démarrez avec Spring Boot
[Compatible JUnit 5] Ecrire un test en utilisant JUnit 5 avec Spring boot 2.2, 2.3
Bonjour tout le monde avec Spring Boot!
Exécutez LIFF avec Spring Boot
Connexion SNS avec Spring Boot
Bonjour tout le monde avec VS Code!
Téléchargement de fichiers avec Spring Boot
Spring Boot commençant par copie
Essayez la loi de l'inversion des dépendances avec plusieurs projets Spring Boot
Utilisation de Mapper avec Java (Spring)
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
Essayez Spring Boot sur Mac
Créer un micro service avec Spring Boot
Envoyer du courrier avec Spring Boot
Les débutants créent un environnement Spring Tools Suite avec VS Code
Essayez de travailler avec Keycloak en utilisant Spring Security SAML (Spring 5)
De la création d'un projet Spring Boot à l'exécution d'une application avec VS Code
J'ai essayé de démarrer avec Swagger en utilisant Spring Boot
Utiliser l'authentification de base avec Spring Boot
Points de révision du code de l'application Spring Boot
gRPC sur Spring Boot avec grpc-spring-boot-starter
Créez une application avec Spring Boot 2
Déploiement à chaud avec le développement Spring Boot
Liaison de base de données avec doma2 (Spring boot)
Tutoriel Spring Boot à l'aide de l'authentification Spring Security
Écrire du code de test avec Spring Boot
Jusqu'à "Hello World" avec Spring Boot
Créer une application d'enquête avec Spring Boot
Essayez d'utiliser Redis avec Java (jar)