Freemarker基础知识(1)
项目中Freemarker有一定的使用量,因此这里将Freemarker的基础知识做下总结:
什么是Freemarker了,FreeMarker是一款模板引擎:一种基于模板的、用来生成输出文本(任何来自于HTML格式的文用本来自动生成源代码)的通用工具。FreeMarker仅仅使用模板生成文本页面来呈现已经准备好的数据。
在FreeMarker学习过程中,发现其语法结构与Python有很大的相似之处,例如序列。
1. 示例
?
?? ?那么如何调用了。
?? ?<@greet person="Fred" color="black"/>
?? ?记得两个参数都得配置,否则解释不过去。当然可以在宏定义时,设置初始值。例如
?? ?<#macro greet person color="black">
?
?? ??根据FTL表达式规则,someParam=foo和someParam="${foo}"是不同的。第一种情况,是把变量foo的值作为参数的值来使用。第二种情况则是使用插值形式的字符串,那么参数值就是字符串了,赋予给someParam也就是字符串了。
?
?4.3 ?嵌套
?个人感觉,嵌套使用之后相当于一个while循环。指令为<#nested>,其执行位于开始和结束标记指令之间的模板代码段
??
?
???看上面的代码知道属于两个不同的命名空间,自己ftl文件直接调用即可,而引入的ftl文件命名空间为my,所以用my可以调用其函数和变量。如果偶尔想要在一个被包含的命名空间上创建或替换一个变量。采用下面的方式
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?
?