这里列举出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>

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

freemarker中8个常用的指令的更多相关文章

  1. 工作中常用Git指令操作

    常用Git指令总结 前阵子有几天好不顺,可谓是喝水都呛着,更何况被Git给呛着了,还不轻,哈哈.所以打算总结一下自己在工作使用到Git相关的东西以及和大家探讨使用GIt的心得体会.于是,关于Git的的 ...

  2. Vue.js中的常用的指令缩写

    Vue.js为两个最为常用的指令提供了特别的缩写: v-bind缩写 <!--完整语法--> <a v-bind:href="url">测试</a&g ...

  3. freemarker中使用<@spring.*>标签实现国际化

    freemarker实现国际化使用自定义指令<@spring>实现,通过@符号可以看出是自定义的指令,在哪里定义的呢? 路径如下:org/springframework/spring-we ...

  4. linux常用操作指令

    Linux常用操作指令: 常用指令 ls        显示文件或目录 -l           列出文件详细信息l(list) -a          列出当前目录下所有文件及目录,包括隐藏的a(a ...

  5. Freemarker中遍历List以及内置函数使用

    在Freemarker应用中经常会遍历List获取需要的数据,并对需要的数据进行排序加工后呈现给用户. 那么在Freemarker中如何遍历List,并对List中数据进行适当的排序呢?一. Free ...

  6. Linux 下 expect 脚本语言中交互处理常用命令

    Linux 下 expect 脚本语言中交互处理常用命令 1. #!/usr/bin/expect 告诉操作系统脚本里的代码使用那一个 shell 来执行.这里的 expect 其实和 Linux 下 ...

  7. Freemarker中如何遍历List

     Freemarker中如何遍历List(附源码) 关键词(Keyword):Freemarker,Freemarker遍历list 在Freemarker应用中经常会遍历List获取需要的数据, ...

  8. git 详细教程和常用操作指令

    git 内部工作原理图 如上图,git 一般可以分为三个区:工作区.暂存区.版本库,通常类似 git add等命令都是与index 暂存区的交互,git commit指令则是 index 与版本库的交 ...

  9. freemarker中对null值问题的处理

    1. freemarker不支持null. 如果值为null会报错. 2.当值为null的处理 1)过滤不显示 Hello ${name!} 在属性后面加感叹号即可过滤null和空字符串 if和”?? ...

随机推荐

  1. webpack4 打包静态资源

    demo 代码点此,开始之前,先做点准备工作. 准备工作 准备一个空文件夹,然后执行下列命令: npm init -y npm i -D webpack webpack-cli 然后创建一个 dist ...

  2. vue3.0和2.0的区别,Vue-cli3.0于 8月11日正式发布,更快、更小、更易维护、更易于原生、让开发者更轻松

    vue3.0和2.0的区别Vue-cli3.0于 8月11日正式发布,看了下评论,兼容性不是很好,命令有不少变化,不是特别的乐观vue3.0 的发布与 vue2.0 相比,优势主要体现在:更快.更小. ...

  3. SAP 如何得到交货单上的序列号清单?

    SAP 如何得到交货单上的序列号清单? 以内向交货单为例(外向交货单方法了类似)予以说明. 1)VL33N,在交货单显示界面, 但是没办法通过这个界面里导出序列号清单. 2),只能通过查表的方式导出序 ...

  4. Android内部存储与外部存储的文件操作类

    public class SDCardHelper { // 判断SD卡是否被挂载 public static boolean isSDCardMounted() { // return Enviro ...

  5. Arcgis CreateFishnet工具,生成到FileGDB中要素类的格网大小不一致

    我的第一篇博客!哈哈 最近在做一些关于创建渔网的工作,发现一些问题,做个总结. 1.问题描述:如图1,设置好渔网的必要参数,输出目录为gdb里的矢量图层,(行列数比较大,渔网的地理范围较小),输出的格 ...

  6. 8. [mmc subsystem] host(第二章)——sdhci

    一.sdhci core说明 1.sdhci说明 具体参考<host(第一章)--概述> SDHC:Secure Digital(SD) Host Controller,是指一套sd ho ...

  7. c语言的布尔量

    #include <stdio.h> #include <stdbool.h> int main() { bool b = true; bool t = false; ; }

  8. 201777010217-金云馨《面向对象程序设计(java)》第十四周学习总结

      项目 内容   这个作业属于哪个课程   https://www.cnblogs.com/nwnu-daizh/   这个作业的要求在哪里 https://www.cnblogs.com/nwnu ...

  9. web-忘记密码了

    题目 随便提交一个数据 点击确定依旧跳转到原来的网页,下面网页依旧跳转到原来的网页 http://ctf5.shiyanbar.com/10/upload/step1.php/step2.php?em ...

  10. 04-numpy-笔记-transpose

    借鉴代码https://blog.csdn.net/xiongchengluo1129/article/details/79017142 吐槽一下CSDN的垃圾广告.. 这是转置,所以1维(向量)和2 ...