结束标签

可以在结束标签中忽略user_def_dir_exp 也就是说可以写</@>来代替</@anything>

循环变量

<@myRepeatMacro count=4>

  SomeThing...

</@>

<@myRepeatMacro count=4 ;x>

  ${x}.SomeThing...

</@>

<@myRepeatMacro count=4 ;x,last>  //自定义指令创建的循环变量和分号之后指定的循环变量数量需要不匹配  last可以不写  x也可以不写

  ${x}.Something...<#if last>This was the last!</#if>

</@>

位置参数传递:  目前仅仅支持宏定义

macro,nested,return指令

没有参数的宏

<#macro test>

  Test text

</#macro>

<@test/>  --> Test text

有参数的宏:

<#macro test foo bar baaz>

  Test test,and the params:${foo},${bar},${baaz}

</#macro>

<@test foo="a" bar="b" baaz=5*5-2/>

-->  Test text,and the params:a,b,23

一个复杂的宏

<#macro list title items>

  <p>${title?cap_first}:

  <ul>

    <#list>

      <li>${x?cap_first}

    </#list>

  </ul>

</#macro>

<@list item=["mouse","elephant","python"] title="Animals"/>

-->  <p>Animals:

  <ul>

    <li>Mouse

    <li>Elephant

    <li>Python

  </ul>

function return 指令

<#function name param1 param2 ... paramN>

  ...

  <#return returnVlalue>

  ...

</#function>

例子:
<#function avg x y >
  <#return (x+y)/2>
</#function>
${avg(10,20)}
-->15

freemarker3的更多相关文章

随机推荐

  1. Eclipse默认编码格式设置方式

    看图即可 STEP ONE: STEP TWO: STEP THREE: STEP FOUR: 项目右击——>Properties 参阅: eclipse编码格式设置 - AlanLee(Jav ...

  2. 发布WebService 1.1

    webservice1.1是基于jdk发布的 package cn.itcast.service01; import javax.jws.WebService; import javax.xml.ws ...

  3. ISO镜像安装UbuntuKylin 13.04 64位,启动菜单制作实例

    1.将光盘镜像中的vmlinuz.efi.initrd.lz,和镜像本身(ubuntu....iso) 三个文件复制到U盘根目录下.如果下面的方法没成功启动,你可能要把U盘格式化为USB-HDD FA ...

  4. C++的引用与const指针的关系以及各种传递方式

    首先我们知道 const int *p 与 int const *p 是一样的,即 *p 是常量:而 int * const p 跟上面是不一样的,即 p 是常量:我们知道引用只是一个别名,与变量共享 ...

  5. mybatis中sql语句传入多个参数方法

    1 使用map <select id="selectRole" parameterType="map" resultType="RoleMap& ...

  6. mysql date and time type ---- mysql 时间&日期 类型详解

    mysql 中支持用多种方式来表示时间与日期 一.mysql 中能表示时间与日期的数据类型: 1.表示年 ) -- 最好不要用这个数据类型.对于年份的取值中有[1901 --> 2155] + ...

  7. layui更新表格单元格数据口,更新单元格的内容

    //监听工具条 table.on('tool(edit)', function(obj){ var data = obj.data; if(obj.event === 'getinvitation') ...

  8. 非常简单的一个函数 竟然一直没有使用 find()

    find: 在非string类型的容器里,可以直接找出所对应的元素. find函数需要几个参数:迭代器,下标值,所要找的元素 vector<int> a; find(a.begin(),a ...

  9. windows 添加打印机

    控制面板---->硬件和声音---->设备和打印机--->点击添加打印机 最后安驱动(选择通用) OK!

  10. background-origin:规定 background-position 属性相对于什么位置来定位

    background-origin:border-box;此时设置background-size:contain; 根据容器的边框定位 例如:容器的盒模型如下:设置了padding:20px;bord ...