zoukankan      html  css  js  c++  java
  • freemarker指令介绍

    FreeMarker 的常用指令
         1、if指令
            分支控制语句
            语法格式如下
           <#if condition>
                ....
           <#elseif condition2>
              ...
           <#elseif condition3>      
              ...
           <#else>
              ...
           </#if>
         
         2、switch、case、default、break指令
            <#switch value>
               <#case refValue>
                  ...
                  <#break>
               <#case refValue>
                  ...
                  <#break>
               <#default>
                  ...
            </#switch>
            虽然FreeMarker提供了switch指令,但它并不推荐使用switch指令来控制也输出,而是推荐使用FreeMarker的if..elseif..else 指令来替代它。
            
        3、list、break指令
        list指令时一个典型的迭代输出指令,用于迭代输出数据模型中的集合。list指令的语法格式如下:
         <#list sequence as item>
           ...
         </#list>
          除此之外,迭代集合对象时,还包括两个特殊的循环变量:
          a、item_index:当前变量的索引值。
          b、item_has_next:是否存在下一个对象
          也可以使用<#break>指令跳出迭代
          <#list ["星期一","星期二","星期三","星期四","星期五"] as x>
              ${x_index +1}.${x} <#if x_has_next>,</#if>
              <#if x = "星期四"><#break></#if>
          </#list>
          
          4、include 指令
            include指令的作用类似于JSP的包含指令,用于包含指定页,include指令的语法格式如下
             <#include filename [options]
              在上面的语法格式中,两个参数的解释如下
              a、filename:该参数指定被包含的模板文件
              b、options:该参数可以省略,指定包含时的选项,包含encoding和parse两个选项,encoding指定包含页面时所使用的解码集,而parse指定被
                 包含是否作为FTL文件来解析。如果省略了parse选项值,则该选项值默认是true
         5、 import指令
            该指令用于导入FreeMarker模板中的所有变量,并将该变量放置在指定的Map对象中,import 指令的语法格式如下
            <#import path as mapObject>
            在上面的语法格式中,path指定要被导入的模板文件,而mapObject是一个Map对象名,通过这行代码,将导致path模板中的所有变量都被放置
            在mapObject中
            <#import "/lib/common.ftl" as com>
         
         6、noparse指令
             noparse指令指定FreeMarker不处理该指令里包含的内容,该指令的语法格式如下:
             <#noparse>
                ...
             </#noparse>
             
         7、escape、noescape指令
           
           
         8、assign指令
            它用于为该模板页面创建或替换一个顶层变量
            
         9、setting指令
            该指令用于设置FreeMarker的运行环境,该指令的语法格式如下:
            <#setting name = value>
            name 的取值范围包括如下几个
             locale :该选项指定该模板所用的国家/语言选项
             number_format:该选项指定格式化输出数字的格式
             boolean_format:该选项指定两个布尔值的语法格式,默认值是"true、false"
             date_format,time_format,datetime_format:该选项指定格式化输出日期的格式
             time_zone:  设置格式化输出日期时所使用的时区

    10、宏marco的使用

    宏是一个模板片段与变量相关联。你可以使用定义的指令,可以帮助你多次使用

    eg:

    <#macro users name>

      用户:${name}

    </#macro>

    <@users name='zhangsan'></@users>

    <@users name='lisi'></@users>

    页面上会输出zhangsan lisi

  • 相关阅读:
    2. Add Two Numbers
    1. Two Sum
    leetcode 213. 打家劫舍 II JAVA
    leetcode 48. 旋转图像 java
    leetcode 45. 跳跃游戏 II JAVA
    leetcode 42. 接雨水 JAVA
    40. 组合总和 II leetcode JAVA
    24. 两两交换链表中的节点 leetcode
    1002. 查找常用字符 leecode
    leetcode 23. 合并K个排序链表 JAVA
  • 原文地址:https://www.cnblogs.com/jincheng81/p/9105172.html
Copyright © 2011-2022 走看看