Groovy Markup 模板引擎 主要是针对生成类似 XML 的标记(XML、XHTML、HTML5 等),但你也可以用它来生成任何基于文本的内容。Spring 框架有一个内置的集成,用于将 Spring MVC 与 Groovy Markup 一起使用。
:::info Groovy Markup Template 引擎需要 Groovy 2.3.1 以上。 :::
配置
下面的例子显示了如何配置 Groovy Markup Template Engine:
@Configuration@EnableWebMvcpublic class WebConfig implements WebMvcConfigurer {@Overridepublic void configureViewResolvers(ViewResolverRegistry registry) {registry.groovy();}// 和前面 freeMarker 类似,需要有一个配置对象@Beanpublic GroovyMarkupConfigurer groovyMarkupConfigurer() {GroovyMarkupConfigurer configurer = new GroovyMarkupConfigurer();configurer.setResourceLoaderPath("/WEB-INF/");return configurer;}}
下面的例子显示了如何在 XML 中进行同样的配置:
<mvc:annotation-driven/><mvc:view-resolvers><mvc:groovy/></mvc:view-resolvers><!-- Configure the Groovy Markup Template Engine... --><mvc:groovy-configurer resource-loader-path="/WEB-INF/"/>
例子
与传统的模板引擎不同,Groovy Markup 依靠的是一个使用构建器语法的 DSL。下面的例子显示了一个 HTML 页面的模板样本:
yieldUnescaped '<!DOCTYPE html>'html(lang:'en') {head {meta('http-equiv':'"Content-Type" content="text/html; charset=utf-8"')title('My page')}body {p('This is an example of HTML contents')}}
