if,else,elseif 指令 

<#if x==1>
 x is 1
</#if> <#if==1>
x is 1
<#else>
  x is not 1
</#if> <#if x==1>
  x is 1
<#elseif x==2>
x is 2
<#elseif x==3>
x is 3
</#if>

注意:  如何测试 x 比 1 大?<#if x > 1>是不对的,因为 FreeMarker 将会解释第一个>作 为结束标记。因此,编写<#if (x > 1)>或<#if x &gt; 1>是正确的

switch,case,default,break 指令

<#switch being.size>

  <#case "small">

    This will be processed if it is small

    <#break>

  <#case "medium">

    This will be  processed if it is medium

    <#break>

  <#case "large">

    This will be processed if it is large

    <#break>

  <#default>

      This will be processed if it is neither

</#switch>

在switch中间必须有一个或多个<#case value>,在所有case标签之后,有一个可选的<#default>.

<#list sequence as item>

...   //sequence:表达式将被算作序列或集合 item:循环变量(不是表达式)的名称

item_index:这是一个包含当前项在循环中的步进索引的数值

item_has_next:来辨别当前项是否是序列的最后一项的布尔值.

</#list>

例子:

<#assign seq=["winter","spring","summer","autumn"]>

<#list seq as x>

  ${x_index+1}.${x}<# if x_has_next>,</#if>

</#list>

将会打印:

1.winter,

2.spring,

3.summer,

4.autumn

<#global name=value>

  or

<#global name1=value1 name2=value2 ... nameN=valueN>

or

<#global name>

  capture this

</#global>

name:变量的名称. value:存储的值,是表达式.

global:该指令和assign相似,但是被创建的变量在所有的命名空间中都可见,但又不会存在于任何一个命名空间中,精确的说,正如你会创建一个数据模型变量,因此,这个变量时全局的,如果在数据模型中,一个相同名称的变量存在的话,它会被使用这个指令创建的变量隐藏,如果在当前命名空间中,一个相同名称的变量存在的话,那么会隐藏由global指令创建的变量.

<#setting name=value>

name:设置的名称,不是表达式

value:设置的值,是表达式

</#setting>

支持的设置有:

local:输出本地化(语言),它可以影响数字,日期等显示格式,值是有语言编码和可选的国家码组成的字符串,en,en_US,en_US_MAC

numbe_format:当没有指定确定的格式化形式时,用来转化数字到字符串形式的数字格式化设置

boolean_format:以逗号分割的一对字符串来分别展示true和false值,当没有指定确定的格式时,转换布尔值到字符串

...

看书学习是枯燥枯燥枯燥枯燥的

freemarker2 指令的更多相关文章

  1. iOS逆向工程之Hopper中的ARM指令

    虽然前段时间ARM被日本软银收购了,但是科技是无国界的,所以呢ARM相关知识该学的学.现在看ARM指令集还是倍感亲切的,毕竟大学里开了ARM这门课,并且做了不少的实验,当时自我感觉ARM这门课学的还是 ...

  2. 步入angularjs directive(指令)--点击按钮加入loading状态

    今天我终于鼓起勇气写自己的博客了,激动与害怕并存,希望大家能多多批评指导,如果能够帮助大家,也希望大家点个赞!! 用angularjs 工作也有段时间了,总体感觉最有挑战性的还是指令,因为没有指令的a ...

  3. Git小技巧 - 指令别名及使用Beyond Compare作为差异比较工具

    前言 本文主要写给使用命令行来操作Git的用户,用于提高Git使用的效率.至于使用命令还是GUI(Tortoise Git或VS的Git插件)就不在此讨论了,大家根据自己的的喜好选择就好.我个人是比较 ...

  4. 浅谈JSP中include指令与include动作标识的区别

    JSP中主要包含三大指令,分别是page,include,taglib.本篇主要提及include指令. include指令使用格式:<%@ include file="文件的绝对路径 ...

  5. [Django]用户权限学习系列之User权限基本操作指令

    针对Django 后台自带的用户管理系统,虽说感觉还可以,但是为了方便用户一些操作,特别设计自定义的用户权限管理系统. 在制作权限页面前,首先需要了解权限和用户配置权限的指令,上章讲到权限的添加,删除 ...

  6. 机器指令翻译成 JavaScript —— No.5 指令变化

    上一篇,我们通过内置解释器的方案,解决任意跳转的问题.同时,也提到另一个问题:如果指令发生变化,又该如何应对. 指令自改 如果指令加载到 RAM 中,那就和普通数据一样,也是可以随意修改的.然而,对应 ...

  7. ARM的栈指令

    ARM的指令系统中关于栈指令的内容比较容易引起迷惑,这是因为准确描述一个栈的特点需要两个参数: 栈地址的增长方向:ARM将向高地址增长的栈称为递增栈(Descendent Stack),将向低地址增长 ...

  8. IL指令详细表

    名称 说明 Add 将两个值相加并将结果推送到计算堆栈上. Add.Ovf 将两个整数相加,执行溢出检查,并且将结果推送到计算堆栈上. Add.Ovf.Un 将两个无符号整数值相加,执行溢出检查,并且 ...

  9. Angular学习-指令入门

    1.指令的定义 从用户的角度来看,指令就是在应用的模板中使用的自定义HTML标签.指令可以很简单,也可以很复杂.AngularJS的HTML编译器会解析指令,增强模板的功能.也是组件化未来的发展趋势, ...

随机推荐

  1. ie 已限制此网页运行脚本或Active控件

      ie 已限制此网页运行脚本或Active控件 CreateTime--2018年3月12日16:49:43 Author:Marydon 情景还原: 在本地调试html页,如果其中包含js或fla ...

  2. Android异步下载

    概述 实现App常见下载公共 支持通知栏显示 支持 暂停.取消功能,使用Service.AsyncTask实现异步下载.特点简单.实用.方便源码扩展修改 详细 代码下载:http://www.demo ...

  3. 【LeetCode】69. Sqrt(x) (2 solutions)

    Sqrt(x) Implement int sqrt(int x). Compute and return the square root of x. 解法一:牛顿迭代法 求n的平方根,即求f(x)= ...

  4. Linux-软件包管理-yum在线管理-光盘yum源

    mount /dev/cdrom /mnt/cdrom 将设备名/dev/cdrom安装到mnt/cdrom挂载点下面mount 查看当前所有挂载信息 cd /etc/yum.repos.d 切换到e ...

  5. java web 解决Form表单乱码问题

    JSP和Servlet的六种中文乱码处理方法 一.表单提交时出现乱码: 在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式. ...

  6. Java Socket网络编程Server端详解

    Socket通信:分为客户端和服务端的socket代码. Java SDK提供一些相对简单的Api来完成.对于Java而言.这些Api存在与java.net 这个包里面.因此只要导入这个包就可以开始网 ...

  7. centos-7 charpter one

    一.system locale 的介绍: 系统的区域设置被保存在/etc/locale.conf 这个文件中,systemd在启动的时候会去读取它:所有用户和程序的区域设置都继承自它, 当然用户&am ...

  8. Object-C中的字符串对象2-可变字符串

    // // main.m // 字符串-可变字符串 // // Created by zhangqs008 on 14-2-13. // Copyright (c) 2014年 zhangqs008. ...

  9. Redis(八):spring data redis 理解

    前言 Spring Data Redis project,应用了Spring概念来开发使用键值形式的数据存储的解决方案.我们(官方)提供了一个 "template" ,这是一个高级 ...

  10. 亲热接触Redis-第一天

    引言 nosql,大规模分布式缓存遍天下.Internet的时代在中国由其走得前沿,这一切归功于我国特色的电商. 因此nosql.大数据技术在中国应用的比国外还要前沿. 从这一章開始我们将開始进入到真 ...