Spring boot 弹簧靴&x2B;Freemarker主模板

Spring boot 弹簧靴&x2B;Freemarker主模板,spring-boot,freemarker,Spring Boot,Freemarker,我正在尝试用spring boot和freemarker作为模板引擎构建一个应用程序。我的问题是,我想为我的所有页面制作一个“主模板”。我发现在Freemarker中使用宏可以实现这一点。这就是我的indexmaster.ftl的样子: [#macro indexmaster title="defaultTitle"] <html> <head> css stuff </head> <body> <div id

我正在尝试用spring boot和freemarker作为模板引擎构建一个应用程序。我的问题是,我想为我的所有页面制作一个“主模板”。我发现在Freemarker中使用宏可以实现这一点。这就是我的indexmaster.ftl的样子:

[#macro indexmaster title="defaultTitle"]
<html>
    <head> css stuff </head>
    <body>
        <div id="content">[#nested /]</div>
    </body>
</html>
[/#macro]
我面临的问题是,当我访问页面时,freemarker“代码”被解释为文本


我做错了什么?是否需要额外的spring引导配置?

对于Freemarker标记,使用“”而不是“[]”。

您需要将Freemarker的
标记语法
配置设置设置为
自动检测
方括号
。对于向后兼容性,默认值为
angle_-bracket
。另一个选项是使用
[#ftl]
启动模板,这将启用方括号语法,即使
标记语法
角括号

是的,这就成功了。。我遵循了基本的freemarker宏语法,因此问题就来了。宏语法与其他标记的语法相同。您可以使用任意语法,只需配置FreeMarker即可。将
标记语法设置设置为
自动检测
方括号
。对于向后兼容性,默认值为
angle_-bracket
[#import "/WEB-INF/ftl/master/indexmaster.ftl" as layout /]
[@layout.indexmaster title="My title"]
 ...rest of the page
[/@layout.indexmaster]