[JAVA] Anzeigen der in Spring Boot eingegebenen Zeichen im Browser und Referenzlinks [Einführung in Spring Boot / Für Anfänger]

Annahmen und Umwelt

Ich lerne, wie man das Java Framework Spring Boot verwendet. Diesmal bei Spring Boot *** Ausgabe der eingegebenen Zeichen *** Jetzt, wo ich es schaffen kann, werde ich es als Memorandum für mich und für Anfänger schreiben.

Da es voller Begriffe war, die ich noch nie zuvor gesehen hatte, wie Variablen und Methoden, die auf dem Weg erscheinen, werde ich es kurz erläutern.

Umgebung: ・ Windows10 ・ Sonnenfinsternis · Java 8 ・ Spring Boot 2.0.4 Release ・ Thymeleaf ・ Maven

Einführung in Spring Boot

Installieren Sie STS über Eclipse Help> Marketplace. Dieser Artikel ist wahnsinnig leicht zu verstehen. [Entwicklung von Webanwendungen ab Spring Tool Suite (STS) und Spring Boot (1)](https://www.techscore.com/blog/2016/11/22/start-with-sts-and-spring-boot- 1 /) Wenn Sie gemäß diesem Artikel fortfahren, ist dies in Ordnung. Abhängigkeiten sind nur Thymeleaf, Maven, Web. Folgen Sie diesem Artikel zu Hallo, Welt!

Zeigen Sie die eingegebenen Zeichen im Browser an

Folgen Sie der Fortsetzung des oben verlinkten Artikels. Von hier aus ist es schwer zu verstehen, deshalb werde ich es erklären.

Lassen Sie uns zunächst mit der Datei spielen, die während Hello, World! Erstellt wurde.

--Edit HelloController.java (nicht wirklich gut, aber wiederverwenden)

*** Grundlegende Notationserklärung ***

Controller.java bearbeiten

HelloController.java


package com.example.demo;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;

//Es ist ein Controller! Beachten Sie, dass
@Controller
public class HelloController {
    //RequestMapping "/"→ Kann beim Zugriff auf die Root-URL aufgerufen werden
    //→ Sie können für jede Zugangsadresse eine Methode angeben!
    @RequestMapping(value="/",method=RequestMethod.GET)
    //Eine praktische, die sowohl Modell als auch Ansicht setzen kann (kann ein Rückgabewert sein)
    public ModelAndView index(ModelAndView mav) {
        //Namenseinstellungen anzeigen
        mav.setViewName("index");
        //Stellen Sie den Wert (msg) und das Ausgabezeichen dafür ein
        mav.addObject("msg", "Bitte geben Sie Ihren Namen ein:");
        return mav;
    }

    @RequestMapping(value="/",method=RequestMethod.POST)
    //"name"Holen Sie sich die Parameter POSTed in und nehmen Sie es als Argument
    public ModelAndView send(@RequestParam("name")String name,ModelAndView mav) {
        mav.setViewName("index");
        mav.addObject("msg", "Hello,"+name+"!");
        //Geben Sie den Namen (Eingabewert) als Wert ein
        mav.addObject("value",name);
        return mav;
    }
}

Das Obige ist der Quellcode des Controllers. (Wenn Sie wissen möchten, was ein Controller ist, suchen Sie nach "Java MVC"!) Da es sich um eine Java-Klasse der Hauptquelle handelt, erstellen Sie sie in src / main / java.

Normalerweise schreibe ich es als Kommentar, aber die Begriffe, die ich nicht verstehe, lauten wie folgt.

Was ist der Unterschied zwischen @Controller und @RestController?

Dieser Artikel wird hilfreich sein. Verschiedene Rückgabewerte auf dem Spring MVC-Controller

Zusamenfassend @Controller wird hauptsächlich für Webseiten-Controller verwendet, @RestController wird separat verwendet Es scheint, dass. Mein Kopf hat noch nicht aufgeholt, aber ich habe irgendwie verstanden, was ich sagen wollte, also als nächstes.

Was ist ModelAndView?

ModelAndView ist eine Funktion von Spring MVC und eine Klasse, die "View" (Objekt, das auf dem Bildschirm angezeigt werden soll) und "Model" (Objekt, um Werte mit der Ansicht auszutauschen) zusammen verarbeiten kann. Indem Sie ModelAndView in das Argument einfügen, können Sie alle Informationen zusammen verwenden. Super praktisch.

Was ist setViewName?

setViewName ist "derjenige, der den Ansichtsnamen festlegt". Wenn Sie den Ansichtsnamen in setViewName auf "index" setzen, wird die Ansicht mit dem Namen index verwendet. Was ist ein Ansichtsname? Es scheint, dass es verschiedene Dinge gibt, also werde ich es das nächste Mal untersuchen. Ausgelassen.

Da hier die Thymeleaf-Vorlagen-Engine verwendet wird, wird die Menge "index" als Thymeleaf-Vorlage (templates / index.html) erkannt. Die Ansicht (Bildschirmanzeigeteil) wird basierend auf den Informationen dieses Ansichtsnamens generiert.

Fügen Sie also diesen "ViewName" und die Ausgabezeichen mit dem Namen "msg" in die ModelAndView-Klasse "mav" ein. Dies ist der gute Punkt von ModelAndView. Wenn Sie also den mav zurückgeben, können Sie den ViewName und msg zusammen an die Client-Seite senden.

Was ist Thymeleaf?

Eine Template-Engine wie HTML.

Eine Bibliothek zum Verarbeiten von Programmen, die auf HTML-Vorlagen basieren, die als Vorlagen bezeichnet werden, und zum Ausgeben auf dem Bildschirm. Der Prozess wird ausgeführt, indem ein spezielles Tag interpretiert und ausgeführt wird, um die Arbeit zwischen dem Programmierer und dem Webdesigner aufzuteilen. Smarty ist ein typisches Beispiel für PHP. [Aus dem Weblio-Wörterbuch](https://www.weblio.jp/content/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3 % 83% 88% E3% 82% A8% E3% 83% B3% E3% 82% B8% E3% 83% B3)

Das Folgende ist daher leicht über die Funktionen von Thymeleaf zu verstehen. Was ist Thymeleaf Der Punkt ist, dass im Gegensatz zu der JSP, die nach der Verarbeitung angezeigt wird, diese durch Attributwerte beschrieben wird, sodass sie ohne Verarbeitung normal angezeigt werden kann und schließlich leicht zu erkennen scheint.

Bearbeiten Sie index.html

Nachdem Sie es bisher verstanden haben (auch in Zackri), bearbeiten Sie index.html.

index.html


<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>Hello Page</title>
</head>
    <body>
        <!-- th:Text wird als Text in Thymeleaf angegeben,${}Ist eine Variable-->
        <p th:text="${msg}">please wait...</p>
        <form action="/" method="post">
        <input type="text" name="name" th:value="${value}" >
        <input type="submit" value="Click">
        </form>
    </body>
</html>

Fügen Sie den HTML-Code in die Vorlagendatei ein. src/main/resources>templates

Diese HTML-Datei ist in Thymeleaf-Notation geschrieben, nicht wahr? Für die Thymeleaf-Notation sind diese beiden Artikel leicht zu verstehen. Beherrsche Thymeleaf vollständig mit der minimal erforderlichen Probe Thymeleaf-Standardausdruckssyntax

Mit dieser Referenz habe ich es geschrieben und kopiert.

Führen Sie das Projekt in diesem Status als Spring Boot-Anwendung aus.

Ergebnisbildschirm

SpringBoot入力文字出力.PNG

Ich konnte den Wert sicher weitergeben!

Recommended Posts

Anzeigen der in Spring Boot eingegebenen Zeichen im Browser und Referenzlinks [Einführung in Spring Boot / Für Anfänger]
[Spring Boot] So erstellen Sie ein Projekt (für Anfänger)
Bucheinführung: Spring Boot Empfohlenes Nachschlagewerk für Anfänger!
So fügen Sie in Spring Boot einen Klassenpfad hinzu
So schreiben Sie einen Komponententest für Spring Boot 2
So erstellen Sie ein Spring Boot-Projekt in IntelliJ
So zeigen Sie eine Browser-Vorschau mit VS-Code an
Aufrufen und Verwenden der API in Java (Spring Boot)
So zeigen Sie Diagramme in Ruby on Rails an (LazyHighChart)
So erstellen Sie mit SPRING INITIALIZR einen Hinadan für ein Spring Boot-Projekt
So stellen Sie sicher, dass CsrfRequestDataValueProcessor und der ursprüngliche RequestDataValueProcessor beim Spring Boot nebeneinander existieren
[Für Anfänger] So debuggen Sie mit Eclipse
[Java] [Für Anfänger] So fügen Sie Elemente direkt in ein zweidimensionales Array ein
So zeigen Sie eine Webseite in Java an
Melden Sie sich bei Spring Boot-Webanwendungen auf der Microsoft ID-Plattform an
[Spring Boot] So rufen Sie Eigenschaften dynamisch aus einer in einer URL enthaltenen Zeichenfolge ab
So binden Sie mit einer Eigenschaftendatei in Spring Boot
Vom Aufbau einer AWS-Cloud-Umgebung bis zur Bereitstellung einer Spring Boot-App (für Anfänger)
Bis Sie ein Spring Boot-Projekt in Intellij erstellen und an Github senden
So implementieren Sie den Authentifizierungsprozess durch Angabe von Benutzername und Kennwort in Spring Boot
[Arbeitsnotiz für persönliche Anwendungen] Anzeigen von Balkendiagrammen und Liniendiagrammen in einem Diagramm
[Swift] So zeigen Sie die eingegebenen Zeichen im Widget über UserDefaults an, wenn Sie das WidgetKit verwenden
Erklärung von Ruby on Rails für Anfänger ④ ~ Informationen zu Benennungsregeln und zur Verwendung von form_Tag ~
Pläne zur Unterstützung von JDK 11 für Eclipse und Spring Boot
So stellen Sie Spring Boot Dependency Injection (DI) ein
[Für Anfänger] DI ~ Die Grundlagen von DI und DI im Frühjahr ~
[Für Anfänger] Mindestbeispiel für die Anzeige von RecyclerView in Java
[Einführung in Spring Boot] Senden Sie ein Formular mit thymeleaf
Verwendung von CommandLineRunner im Spring Batch von Spring Boot
So konvertieren Sie A in a und a in A mit logischem Produkt und Summe in Java
So ändern Sie den Einstellungswert von application.properties beim Booten im Frühjahrsstart
So entwickeln und registrieren Sie eine Sota-App in Java
Einführung von Spring Boot2, einem Java-Framework für die Webentwicklung (für Anfänger)
So erstellen und starten Sie eine Docker-Datei für Payara Micro
So steuern Sie Transaktionen in Spring Boot ohne Verwendung von @Transactional
Einführung in Spring Boot ~ ~ DI ~
Einführung in Spring Boot ② ~ AOP ~
Einführung in Spring Boot Teil 1
Ein Muss für Anfänger! Eine konkrete Möglichkeit, ein X-Code-Projekt auf Github zu verwalten
[R Spec on Rails] So schreiben Sie Testcode für Anfänger von Anfängern
So bedienen Sie automatisch einen in Java unter Windows erstellten Bildschirm
[Tipps] So lösen Sie Probleme mit XCode und Swift für Anfänger
So legen Sie ein Profil mit annotationsbasierter Konfiguration im Spring-Framework fest und verwenden es
So laden Sie eine Spring-Upload-Datei und zeigen ihren Inhalt an
Speichern der im Textbereich eingegebenen Informationen in einer Variablen in der Methode
Schreiben wir einen Testcode für die Anmeldefunktion mit Spring Boot
So bringen Sie JDK 11 bequem in den Mac
Wie man Lombok im Frühling benutzt
So stellen Sie Spring Boot + PostgreSQL ein
Verwendung von ModelMapper (Spring Boot)
So wenden Sie Thymeleaf-Änderungen sofort mit #Spring Boot + maven auf den Browser an
Spring.messages.fallback-to-system-locale: false ist erforderlich, um message.properties für die i18n-Unterstützung von Spring boot als Standard festzulegen
So testen Sie eine private Methode und verspotten sie teilweise in Java
So erstellen Sie eine Abfrage mithilfe von Variablen in GraphQL [Verwenden von Ruby on Rails]
Problemumgehung für Command Line Runner zur Arbeit mit JUnit in Spring Boot
Anzeigen von Fehlermeldungen und Erfolgsmeldungen bei der Registrierung als Benutzer
[Docker] So erstellen Sie eine virtuelle Umgebung für Rails- und Nuxt.js-Apps
(Für Anfänger) [Rails] Zeitsparende Technik! So installieren und verwenden Sie slim
Server mit Spring Gradle ausführbar So erstellen Sie JAR und WAR