Erstellen Sie eine TODO-App in Java 7 Create Header

Hallo. In diesem Artikel möchte ich auf die Erstellung des Header-Teils der mit Spring und Thymeleaf erstellten TODO-Anwendung eingehen.

Linkerfassung zur Erstellung von TODO-Anwendungen

1: [Grundlegendes zu den Super-Grundlagen] Eine kurze Beschreibung von MVC 2: [Vorlage vorbereiten] Ich möchte eine Vorlage mit Spring Initializr erstellen und eine Hallo-Welt erstellen 3: [Verbindung / Einstellungen / Datenanzeige mit MySQL] Temporäre Daten in MySQL speichern-> Alle abrufen-> Oben anzeigen 4: [POST-Funktion] Implementierung der Posting-Funktion 5: [PATCH-Funktion] TODO-Anzeige umschalten 6: [Einfach zu verwendendes JpaRepository] Implementierung der Suchfunktion 7: [Häufig mit Thymeleaf-Vorlagenfragmenten] Header erstellen (jetzt hier)

Aktuelle Seitenstruktur

・ Http: // localhost: 8080 / top ・ Http: // localhost: 8080 / search

Derzeit werden auf diese Weise nur zwei Seiten angezeigt.

In Zukunft als Ansicht in dieser TODO-App

・ Seite mit dem Fehler · Seite bearbeiten

Wird erstellt, sodass der vordere Anzeigebereich insgesamt 4 Seiten umfasst.

Und die Spezifikation ist, dass alle vier Seiten einen gemeinsamen Header haben.

Wenn es ungefähr 4 Seiten sind, wird es in individuellem HTML sein

html


<header>....</header>

ich kann hinzufügen

Wenn Sie der Kopfzeile einen neuen Link hinzufügen möchten, können Sie eine Seite bearbeiten. Diese wird auf allen Seiten angezeigt, was die Bearbeitung sehr einfach macht.

Was ist ein Vorlagenfragment?

Das Vorlagenfragment ist eine Funktion von Thymeleaf, die HTML verwaltet, das Sie freigeben möchten.

Es wird verwendet, wenn eine HTML-Datei oder ein HTML-Element in mehreren HTML-Dateien angezeigt wird.

Ich denke, diese Idee kommt dem Konzept der in Vue.js und React verwendeten Komponenten nahe, daher ist es möglicherweise gut, sich dessen bewusst zu sein.

Nun, wie man Vorlagenfragmente verwendet

das ist

** 1. Fragmentieren Sie die Elemente, die Sie auf mehreren Seiten anzeigen möchten **

** 2. Rufen Sie das Fragment auf der Seite auf, die Sie verwenden möchten **

Es wird erschöpft sein.

Positionsbeziehung von HTML-Dateien

Diesmal der Header

main/resources/templates/common/header.html

Erstellen Sie es mit diesem Pfad und fragmentieren Sie es.

Und das

main/resources/templates/top.html main/resources/templates/search.html

Lassen Sie es uns in der Kopfzeile von anzeigen!

HTML-Elemente fragmentieren

Lassen Sie uns nun fragmentieren.

Zunächst werde ich kurz das Konzept der Fragmentierung erläutern.

Was bedeutet Fragmentierung?

Fragment bedeutet * "Fragment / Fragment / Fragment" *.

Mit anderen Worten, Fragmentierung ist ein gutes Bild für die Registrierung (variabler) HTML-Elemente als * ein Stück *!

Wie man fragmentiert

Für Elemente, die Sie freigeben möchten (z. B. Header)

<header th:fragment="header_fragment()>
  ...
</header>

th: fragment =" Fragmentname (Argument, wenn Sie ein Argument übergeben möchten)

Sie können es fragmentieren, indem Sie wie folgt vorgehen.

Versuchen Sie, den Header zu fragmentieren

main/resources/templates/common/header.html


<!DOCTYPE html>
<html lang="ja" xmlns:th="http://www.thymeleaf.org">
    <header th:fragment="header_fragment()">
        <div class="text-center bg-primary">
            <div class="d-flex p-3">
                <p class="display-4 w-75 pl-5 mb-0 text-left font-weight-bold">
                    <a th:href="@{/top}" class="text-dark">Aufgabenliste</a>
                </p>
                <p class="display-4 w-25 mb-0 mr-5 text-right font-weight-bold ">
                    <a th:href="@{/search}" class="text-dark">Suche</a>
                </p>
            </div>
        </div>
    </header>
</html>

Wie Sie sehen können, wird dieser Header durch Schreiben von "

" fragmentiert.

Nennen wir dies aus einem anderen HTML!

Fragmentieren und rufen Sie View aus einem anderen HTML-Code auf.

main/resources/templates/top.html


<body>
  <header th:replace="common/header :: header_fragment()"></header>
    .....Abkürzung
  </header>
</body>

Was ich beachten möchte, ist der Teil von th: replace =" .... ".

Ersetzen hat die Bedeutung von * Ersetzen * und ersetzt buchstäblich das HTML-Element.

Es ist also ein Bild, das völlig überschreibt. Es gibt andere Anzeigemethoden wie "th: insert" und "th: include". Wenn Sie sie also richtig verwenden möchten, sollten Sie sie überprüfen.

th: replace =" Relativer Pfad des Fragments, das Sie aufrufen möchten :: Fragmentname, den Sie aufrufen möchten "

Sie können dieses Fragment aufrufen, indem Sie!

Jetzt können Sie problemlos allgemeine Header aufrufen, auch wenn die Anzahl der Aufrufe in Zukunft zunimmt!

Zusammenfassung

Grob schreiben, wie Vorlagenfragmente verwendet werden

-Fragmentieren Sie die Ansicht, die Sie standardisieren möchten (th: fragment)

  • Rufen Sie diese Ansicht auf (th: replace, th: insert, th: include)

Wird sein!

Dieses Mal überschreibt Ersetzen das Element vollständig, aber abhängig von den Spezifikationen denke ich, dass ich etwas aufrufen möchte, das teilweise üblich ist (z. B. eine Schaltfläche). Versuchen Sie in diesem Fall, Einfügen oder Einschließen zu verwenden. Machen wir das!

Recommended Posts

Erstellen Sie eine TODO-App in Java 7 Create Header
Lassen Sie uns eine Taschenrechner-App mit Java erstellen
Lassen Sie uns eine TODO-App in Java 4 erstellen. Implementierung der Buchungsfunktion
Lassen Sie uns eine TODO-App in Java 6 erstellen. Implementierung der Suchfunktion
Lassen Sie uns eine TODO-App in Java 8 erstellen. Implementierung von Bearbeitungsfunktionen
Erstellen wir eine TODO-Anwendung mit Java 1 Kurze Erläuterung von MVC
Lassen Sie uns eine TODO-App in Java 5 erstellen. Schalten Sie die Anzeige von TODO um
Janken App in Java
[Java] Erstellen Sie einen Filter
Erstellen Sie JSON in Java
Erstellen Sie eine CSR mit erweiterten Informationen in Java
Versuchen Sie, ein Bulletin Board in Java zu erstellen
Lassen Sie uns mit Java ein supereinfaches Webframework erstellen
Erstellen Sie ein Docker-Image, um eine einfache Java-App auszuführen
So erstellen Sie eine Java-Umgebung in nur 3 Sekunden
Erstellen Sie eine Java-Methode [Memo] [java11]
Ich habe versucht, eine Clova-Fähigkeit in Java zu erstellen
So erstellen Sie einen Daten-URI (base64) in Java
[Java] Erstellen Sie eine temporäre Datei
Suchen Sie eine Teilmenge in Java
[Vollständige Programmierung] §5 Erstellen Sie eine Überprüfungsverwaltungs-App in Ruby
Erstellen wir eine TODO-Anwendung mit Java 11-Ausnahmebehandlung, wenn Sie mit einer nicht vorhandenen ID auf TODO zugreifen
Erstellen Sie einen SlackBot mit AWS Lambda & API Gateway in Java
Erstellen Sie eine Methode, um den Steuersatz in Java zurückzugeben
So entwickeln und registrieren Sie eine Sota-App in Java
3 Implementieren Sie einen einfachen Interpreter in Java
Ich habe ein PDF mit Java erstellt.
Ich habe eine shopify App @java erstellt
Erstellen Sie eine Datenbank in einer Produktionsumgebung
Erstellen Sie ein Java-Projekt mit Eclipse
Ein einfaches Beispiel für Rückrufe in Java
Erstellen Sie ein Servlet-Programm in Eclipse
Versuchen Sie, eine Server-Client-App zu erstellen
Bleiben Sie in einem Java Primer stecken
Erstellen Sie ein klares Zeitranking mit der Echtzeitdatenbank von Firebase (Android-App)
Erstellen Sie eine benannte SkipList in Java, die wie eine nach Redis sortierte Menge aussieht
Ich habe versucht, eine einfache Karten-App in Android Studio zu erstellen
So erstellen Sie ein neues Gradle + Java + Jar-Projekt in Intellij 2016.03
[Java] Gibt eine japanische Namensdatei im Dateinamen im HTTP-Header zurück
Erstellen wir eine TODO-App in Java 13 TODO-Formularvalidierung 1: Zeichenbegrenzung · Gradle-Update zur Verwendung von @Validated
Erstellen wir eine TODO-App mit Java 3 Speichern Sie temporäre Daten in MySQL-> Get all-> Display on top
[Java] Erstellen und Anwenden eines Folienmasters
Bei der Suche nach mehreren in einem Java-Array
Erstellen Sie Binärdaten variabler Länge in Java
[Rails6] Erstelle eine neue App mit Rails [Anfänger]
[Erstellen] Ein Memorandum über das Codieren in Java
Java erstellt eine Tabelle in einem Word-Dokument
Java erstellt ein Kreisdiagramm in Excel
Erstellen Sie mit IntelliJ ein Java Spring Boot-Projekt
Lassen Sie uns eine Java-Entwicklungsumgebung erstellen (Aktualisierung)
Was ist eine Klasse in der Java-Sprache (2 /?)
Stellen Sie eine Java-Web-App für Heroku bereit
Implementieren Sie so etwas wie einen Stack in Java
[Rails 5] Erstelle eine neue App mit Rails [Anfänger]
Teilen Sie eine Zeichenfolge in Java mit ". (Dot)"
Erstellen einer Matrixklasse in Java Teil 1
So erstellen Sie eine Zip-Datei beim Gruppieren von Datenbanksuchergebnissen in Java
Ich habe ein Programm zur Beurteilung von Primzahlen in Java erstellt
GetInstance () aus einer @ Singleton-Klasse in Groovy aus Java