Heim  >  Artikel  >  Java  >  Verwendung von FreeMarker für die Web-Template-Engine-Verarbeitung in der Java-API-Entwicklung

Verwendung von FreeMarker für die Web-Template-Engine-Verarbeitung in der Java-API-Entwicklung

PHPz
PHPzOriginal
2023-06-18 08:39:541569Durchsuche

Mit der rasanten Entwicklung des Internets ist die Entwicklung von Webanwendungen immer häufiger geworden. Um Webanwendungen besser lesbar und wartbar zu machen, verwenden Entwickler häufig Web-Template-Engines zum Rendern von Ansichten. In der Java-Entwicklung gibt es viele beliebte Web-Template-Engines, und FreeMarker ist eine davon.

In diesem Artikel wird die FreeMarker-Webvorlagen-Engine und ihre Verwendung in der Java-API-Entwicklung vorgestellt, einschließlich ihrer Kernfunktionen, Konfiguration und ihrer Anwendung im tatsächlichen Kampf.

1. Was ist FreeMarker? FreeMarker ist eine Open-Source-Java-Vorlagen-Engine, die eine vorlagenbasierte Methode verwendet, um statischen Text oder dynamische Webseiten zu generieren. Sein Merkmal ist die Trennung von Vorlagen und Programmcode, die die Grenzen zwischen Leistung und Logik verdeutlicht, Seitenrendering und Geschäftslogik trennt und die Lesbarkeit und Wartbarkeit des Codes verbessert. FreeMarker unterstützt mehrere Vorlagentypen wie Textvorlagen, XML-Vorlagen, HTML-Vorlagen, JSP-Tag-Bibliotheken usw. und kann in eine Vielzahl von Web-Frameworks wie Struts2, Spring MVC usw. integriert werden.

FreeMarker verfügt über die folgenden Funktionen:

Bedenkenstrennung: Die Vorlagendatei definiert nur den Anzeigeeffekt der Seite und das interaktive Verhalten von Front-End-Benutzern, ohne eingebetteten Geschäftslogikcode.
  1. Starke Typunterstützung: Im Vergleich zu JSP verfügt FreeMarker über starke Typunterstützungsfunktionen, die uns helfen können, Typfehler zur Kompilierungszeit zu überprüfen und Laufzeitfehler zu reduzieren.
  2. Verschiedene Vorlagendateiformate: FreeMarker unterstützt die Verarbeitung mehrerer Vorlagendateiformate, einschließlich, aber nicht beschränkt auf HTML, XML und JSON.
  3. Kompatibilität: FreeMarker kann in verschiedene Web-Frameworks integriert werden und wird häufig in SpringMVC, Struts2 und anderen Frameworks verwendet.
  4. 2. Verwendung der FreeMarker-API

FreeMarker bietet viele APIs, um damit Vorlagen zu generieren. Unser erster Aufruf beinhaltet die Konfiguration von FreeMarker für die Ausgabe von Vorlagen. Als Nächstes zeigen wir, wie Sie die FreeMarker-API einrichten und verwenden.

Wir stellen das Abhängigkeitspaket von FreeMarker vor
  1. Zuerst müssen wir die Abhängigkeiten von FreeMarker in den POM des Projekts einfügen. Um die Vorlage zu laden, sehen Sie sich das folgende Codebeispiel an:
    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>2.3.31</version>
    </dependency>

Darunter ist VERSION_2_3_28 die FreeMarker-Versionsnummer und die Die Methode setClassForTemplateLoading() legt den Pfad für FreeMarker zum Laden der Vorlage fest.

  1. Festlegen des Datenmodells

Als nächstes müssen Sie die Eingabedaten der Vorlage festlegen. In FreeMarker ist dieser Hintergrund eine Karte, und diese Karte muss alle Daten enthalten, die wir in der Vorlage verwenden möchten. Wir können den SimpleHash-Typ verwenden, um diese Karte zu erstellen:

Configuration configuration = new Configuration(Configuration.VERSION_2_3_28);
configuration.setClassForTemplateLoading(YourClass.class, "templates");

In diesem Beispiel haben wir „title“ als Schlüssel und „FreeMarker-Beispiel“ als Wert zur Eingabe hinzugefügt.

  1. Laden und rendern Sie die Vorlage

Abschließend müssen wir die Vorlage laden und die Eingabedaten in die Vorlage rendern, siehe folgendes Codebeispiel:

Map<String, Object> input = new HashMap<String, Object>();
input.put("title", "FreeMarker Example");

In diesem Beispiel ist „example.ftl“ die Vorlage Datei verwenden wir Die Methode „configuration.getTemplate()“ wird zum Laden verwendet, die Methode „template.process()“ wird zum Rendern der Daten in der Eingabe in die Vorlage und schließlich zur Ausgabe nach außen verwendet.

  1. FreeMarker-Vorlagensyntax

Die FreeMarker-Vorlagensyntax definiert Vorlagen-Tags, integrierte Formate und Methoden. Vorlagenmarkierungen sind Anweisungen in Vorlagen, die aus FreeMarker-Vorlagencode in einem Paar von ${}- oder 72637aecae1027e7d023ac098a170986-Tags bestehen.

Hier sind einige FreeMarker-Marker:

  1. ${...}: FreeMarker-Ausdrücke können jeden zulässigen Java-Ausdruck enthalten.
210ed1318abde7834e36492ec8375eb8: Enthält Original-Vorlagen-Tags.

f3e420799a6591d1a980bb00b8364694..9b0e62076707393bcdcc1fdedef2cb31: Zeigt ein aggregiertes Vorlagenfragment an.

#...#list..#assign...#recover...#stop: Manipulieren und steuern Sie das Original-Tag der Vorlageninstanz.
  1. b6171c79e43d4ace7268281c91ab5617...ef41338967419463344c621c1409f21c611f73697c333334ce54ec171d4b0f56: Definieren Sie einen wiederverwendbaren Vorlagenblock.
  2. 3. Anwendungsbeispiele von FreeMarker
  3. Nachfolgend zeigen wir, wie man FreeMarker zum Schreiben von Vorlagen in der Java-API-Entwicklung verwendet.
  4. Schreiben Sie eine Vorlagendatei

Zuerst müssen wir eine FreeMarker-Vorlagendatei schreiben, zum Beispiel test.ftl:

Template template = configuration.getTemplate("example.ftl");
Writer out = new OutputStreamWriter(System.out);
template.process(input, out);
out.flush();

In diesem Beispiel verwenden wir das Tag ${...}, um auf die Daten zu verweisen die Eingabe, indem Sie das Tag 364e9d80cdc5c997ad29773a08b6c2809fc13d131a1403f8a03377ed174a3a41 verwenden, um die Benutzer zu durchlaufen und die Namens- und E-Mail-Attribute von jedem Benutzer abzurufen.

  1. Festlegen des Datenmodells und Laden der Vorlage

Dann müssen wir das Datenmodell festlegen, siehe folgendes Codebeispiel:

<html>
<head>
<title>${title}</title>
</head>
<body>
<h1>${title}</h1>
<ul>
<#list users as user>
<li>${user.name} (${user.email})</li>
</#list>
</ul>
</body>
</html>

In diesem Beispiel haben wir beim Erstellen der Karte eine JavaBean-Klasse mit dem Namen User erstellt , fügen wir der Eingabe die userList als Schlüssel und die List-Referenz als Wert hinzu.

    3. Zusammenfassung
  1. Dieser Artikel stellt die FreeMarker-Webvorlagen-Engine und ihre Verwendung in der Java-API-Entwicklung vor. FreeMarker erleichtert die Entwicklung von Webanwendungen und verbessert gleichzeitig die Lesbarkeit und Wartbarkeit des Codes. Durch die Erläuterung der Kernfunktionen, Konfiguration und Anwendung von FreeMarker in der Praxis hoffen wir, den Lesern dabei zu helfen, FreeMarker besser zu verstehen und anzuwenden.

Das obige ist der detaillierte Inhalt vonVerwendung von FreeMarker für die Web-Template-Engine-Verarbeitung in der Java-API-Entwicklung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn