本文主要是介绍(三) Freemarker 常用指令,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一 常用指令
1. assign: 自定义变量
2. if else :流程判断指令
3. list: 变量sequence
4. marco: 宏指令(自定义方法)
5. import: 引入命名空间
6. include: 嵌入文件指令
二 指令详解
【1. assign 指令】: 自定义变量
1.1 自定义变量:
<#assign hw = "hello,world"/>
1.2 调用:用$ 调用
hw = ${hw}
【2. if 指令】: 判断语句, if 相关的指令中不需要用 $ 号,直接可以从map 中获取元素
2.1 if else 组合:
<#if status == 0>
status is 0
<#else>
status is not 0
</#if>
2.2 if elseif else 组合:
<#if status ==0 >
status = 0
<#elseif status ==1>
status = 1
<#else>
status != 0 && status !=1
</#if>
【3. list 指令】:list可以遍历sequence 类型的数据, 即 数组, List, Set
1.1 foreach:
<#list citys as city>
${city_index} --> ${city}
</#list>
3.2 获取遍历索引: 变量名_index
<#list names as name>
${name_index} --> ${name}
</#list>
【4. macro 宏指令】, 类似于自定义方法
1. 定义宏指令(定义方法)
<#macro sayHello name1 name2>
hello, ${name1} and ${name2}
</#macro>
2. 调用宏指令(调用方法)
<@sayHello name1="zhangsan" name2="lisi"/>
3. nested 指令: 代替调用宏指令时标签对之间包裹的内容
<#macro hw>
hello,<#nested>
</#macro>
<@hw>zhangsan,lisi,wangwu,zhaoliu</@hw>
【5. import 指令】: 引入命名空间:
1. 引入命名空间:<#import "templateUtil.ftl" as util />
2. 调用响应方法:<@util.printEmp employee/>
3. 调用变量:${util.fileName}
修改变量:<#assign fileName = "command.ftl" in util />
${util.fileName}
【6. include 】嵌入文件:
1. 执行步骤:
1. 合并文件: 将被嵌入的文件的内容全部导入当前 文件
2. 解析: 然后用freemarker 语法解析嵌入的文件片段
2. 示例:以下是文件 hello.ftl 的文本内容:
<#include "include.txt" />
三 测试结果:
这篇关于(三) Freemarker 常用指令的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!