如何在freemarker

时间:2017-08-26 07:41:25

标签: freemarker

我正在尝试通过template.process(,)处理freemarker模板,并通过TemplateLoader接口从数据库(mongo)加载模板。我想为包含的模板定义不同的数据模型。主要是我想为单个包含的模板定义template.process。

此外,在处理模板时,我们可以通过哪种方式执行业务逻辑。

在实现模板加载器界面时处理模板是否是一个好主意?

1 个答案:

答案 0 :(得分:0)

如果通过包含模板意味着使用<#include ...>,那么这基本上是用于从可重复使用的片段组成单个模板,因此它不能包含与包含模板不同的数据模型。但是您可以使用自己的自定义指令实现(请参阅TemplateDirectiveModel)在另一个内部执行全新的模板处理,只需将Environment.getOut()传递给Template.process,以便它写入父级的输出模板处理。

相关问题