2017-06-02 1 views
0

Hallo und danke für Ihre ZeitWelche Template Engine sollte ich in Spring MVC verwenden?

Ich lerne Frühling MVC und möchte Website erstellen. Das Hauptproblem ist das Vorlagensystem.

Sollte ich JSP/JSF/Apache FreeMarker/Thymeleaf oder etwas anderes verwenden?

Ich habe viele Diskussionen zu diesem Thema gesehen, aber sie sind alle veraltet. Also, ich bin neugierig, was ist jetzt in Ordnung?

+0

Zwei Antworten, die beiden schlagen * thymeleaf * vor. Ich werde es tun. Ich habe vor einigen Monaten ein kleines Projekt mit Spring MVC + Thymeleaf gemacht und bin sehr zufrieden. – russellhoff

Antwort

3

Die Best Practices für das serverseitige Rendern haben sich in Richtung einer Template-Engine verschoben. Diese erhalten die Verantwortung, die Daten mit der Vorlage in die eigentliche Ausgabe zusammenzuführen.

Aktuelle Präferenz zu sein scheinen:

  1. Thymeleaf (http://www.thymeleaf.org)
  2. Freemarker (http://freemarker.org/)
  3. Apache Velocity

JSP und JSF sind völlig verschiedene Dinge aus der Mode geworden . Das große Plus bei der Verwendung einer tatsächlichen Vorlagen-Engine ist, dass Sie gezwungen sind, die Bedenken beim Sammeln der Daten zu trennen, die vorhandenen Daten darzustellen und zu rendern und Ihnen die Möglichkeit zu geben, (die Einheiten) die Vorlagen zu testen.

Die Industrie verlagert sich wieder in Richtung clientseitiges Rendering, wobei der Server die Daten einfach als JSON-Objekte zurückgibt und die Webanwendung ein Framework wie Angular, React, jQuery oder Ember verwendet, um die Seiten zu erstellen.

2

Sie können beliebige von ihnen verwenden, wie sie unterstützt werden. JSP, Freemaker und Thymeleaf ähneln sich durch die Idee, Sie erstellen Vorlage, die gerendert werden soll. JSP und Freemaker fehlen einige Funktionen, die in Thymeleaf verfügbar sind.

Ich mag Thymeleafs Idee, wo Sie Ihre Vorlage in den Browser laden können und sehen, wie die Seite gerendert wird (real). Thymeleaf Vorlage ist voll funktionsfähige HTML-Seite. Das ist nicht möglich in JSP, wo Sie JSP-Tags und Freemaker haben, wo Sie Platzhalter haben.

JSF ist komponentenbasiert, das ist ein anderer Ansatz.

Wenn ich wählen muss, würde ich Thymeleaf verwenden.

Verwandte Themen