Groovy

Using Groovy

Language Guide

Groovy Features

Modules

Examples

Useful Links

IDE Support

Support

Community

Developers

Tools we use

IntelliJ IDEA
YourKit profiler

Feeds


Site
News
Groovy Templates

The template framework in Groovy consists of a TemplateEngine abstract base class that engines must
implement and a Template interface that the resulting templates they generate must implement.

Included with Groovy is the SimpleTemplateEngine that allows you to use JSP-like scriptlets, script, and EL expressions in your template in order to generate parametrized text. Here is an example of using the system:

import groovy.text.Template
import groovy.text.SimpleTemplateEngine

text = 'Dear \"${firstname} ${lastname}\",\nSo nice to meet you in <% print city %>.\nSee you in ${month},\n${signed}'

binding = ["firstname":"Sam", "lastname":"Pullara", "city":"San Francisco", "month":"December", "signed":"Groovy-Dev"]

engine = new SimpleTemplateEngine()
template = engine.createTemplate(text).make(binding)

result = 'Dear "Sam Pullara",\nSo nice to meet you in San Francisco.\nSee you in December,\nGroovy-Dev'

assert result == template.toString()

Though its possible to plug in any kind of template engine dialect, we can share the same API to invoke templates. e.g. we could create a Velocity / FreeMarker flavour TemplateEngine implemenation which could reuse GPath and auto-recompile to bytecode.