freemarker中8个常用的指令

这里列举出Freemarker模板文件中8个常用的指令。

1. assign

assign指令用于创建或替换一个顶层变量,assign指令的用法有多种,包括创建或替换一个顶层变量,创建或替换多个变量等。

示范代码:

<#assign x>
  <#list [“星期一”, ”星期二”, ”星期三”, “星期四”, ”星期五”, ”星期六”, ”星期日”] as n>
    ${n}
  </#list>
</#assign>

2. break

break指令用于跳出迭代。

示范代码:

<#list [“星期一”, ”星期二”, ”星期三”, “星期四”, ”星期五”, ”星期六”, ”星期日”] as x>
  ${x_index + 1}.${x}<#if x_has_next>,</if>
  <#if x=”星期四”><#break></#if>
</#list>

3. switch、case、default

switch, case, default这些指令都是分支指令,作用类似于Java中的switch语句。

示范代码:

<#switch x>
  <#case x = 1>1
  <#case x = 2>2
  <#case x = 3>3
  <#default>d
</#switch>

如果x=1输出1,如果x=2输出2,如果x=3输出3,x=4输出d。

4. if、else if、else

else指令是一个典型的分支控制指令,作用完全类似于Java语言中的if。

示范代码:

<#assign age = 23>
  <#if (age > 60)>老年人
    <#else if (age > 40)>中年人
    <#else if (age > 20)>青年人
  <#else>少年人
  </#if>
</#assign>

5. escape

escape指令导致body区的插值都会被自动加上escape表达式,但不会影响字符串内的插值,只会影响到body内出现的插值。

示范代码:

<#escape x as x?html>
    First Name:${firstName}
    Last Name:${lastName}
    Maiden Name:${maidenName}
</#escape>

6. import

import指令用于导入FreeMarker模版中的所有变量,并将该变量放置在指定的Map对象中。

示范代码:

<#import “/libs/myLib.ftl” as my>

7. include

include指令用于包含指定页,作用类似于JSP的包含指令。

示范代码:

<#include “/common/copyright.ftl” encoding=”GBK”>

8. list

list指令是一个迭代输出指令,用于迭代输出数据模型中的集合

示范代码:

<#list [“星期一”, ”星期二”, ”星期三”, “星期四”, ”星期五”, ”星期六”, ”星期日”] as x>
    ${x_index + 1}.${x}<#if x_has_next>,</if>
    <#if x=”星期四”><#break></#if>
</#list>

"苦练七十二变,才能笑对八十一难。"

原文地址:https://www.cnblogs.com/yanggb/p/11089936.html