Template

Das kleine Groovy-Grails-Lexikon

Ein Template ist ein Text, der in bestimmter Weise gekennzeichnete Platzhalter enthält, die mit Hilfe einer Template-Engine durch Daten ersetzt werden können. Ein beliebtes Einsatzgebiet für Templates ist die Generierung von Webseiten.

Die Groovy-Laufzeitbibliothek enthält ein komplettes Framework für die Verarbeitung von Templates und mehrere vorgefertigte Template-Engines. Darüber hinaus gibt es eine Klasse TemplateServlet, die direkt dazu eingesetzt werden kann, in einem Servlet-Container Webseiten aus Template-Texten zu generieren.

Eine der Template-Engines, die SimpleTemplateEngine, funktioniert ähnlich wie JavaServer Pages, d.h sie interpretiert alles, was zwischen den Zeichenfolgen <% und %> steht, als Groovy-Code, und außerdem kann man Groovy-Ausdrücke in gleicher Weise wie die Platzhalter in GStrings eingefügen.

Das folgendee Beispielskript generiert mit Hilfe eines Templates eine HTML-Seite, die eine sortierte Aufzählung aller aktuellen Umgebungsvariablen und deren Werte enthält, und gibt das Ergebnis auf der Konsole aus.

text = '''
<% pageTitle = "Umgebungsvariablen" %>
<html>
    <head>
        <title>$pageTitle</title>
    </head>
    <body>
        <h1>$pageTitle</h1>
        <ul>
<% System.getenv().entrySet().sort{x,y -> x.key<=>y.key}.each { %>
            <li>$it.key = $it.value</li>
<% } %> 
        </ul>
    </body>
</html>
'''

engine = new groovy.text.SimpleTemplateEngine()
template = engine.createTemplate(text)
println template.make()

Die Funktionalität dieses Beispiels entspricht dem Beispiel zu Builder.

In Grails gibt es eine ähnliche, aber erheblich erweiterte Technologie namens Groovy Server Pages (GSP). Der Begriff Template hat in Grails eine andere Bedeutung (siehe Template (Grails)).

Groovy-Dokumentation

lexikon/template.txt · Zuletzt geändert: 04.02.2009 von jst
Recent changes RSS feed Creative Commons License Donate Driven by DokuWiki