Freemarker学习笔记二—基本语法

本文介绍Freemarker的基本语法,包括标记类型及其应用场景,如条件判断、循环操作及变量赋值等,并探讨了如何通过include和import指令来有效管理模板文件。

Freemarker基本语法

1Freemarker 标记

FreeMarker标记的设计非常精炼,只有三种:
1) $ : ${expression}FreeMarker会在输出时用实际值进行替代

       例如:${stockNum?default(‘’)}

2) # :标准的FTL标记。大部分FreeMarker指令都以#开始,可以明显地与html标记区分,
<#if user ="BigJoe">our beloved leader</#if>。
同时,FTL文件的注释包含在<#--和-->(而不是<!--和-->)之间 
3) @作为用户定义指令使用宏变量时,使用@替代FTL标记中的#。后面将详细介绍宏


2FTL标记指令
1) if, else, elseif
语法
<#if condition>

  ...

<#elseifcondition2>

  ...

<#else>

    ...

 </#if>


用例


2) switch, case, default, break

<#switchbeing.size>

   <#case "small">

       This will be processed if it is small

       <#break>

    <#case "medium">

      This will be processed if it ismedium 

     <#break>

    <#case "large">

       This will be processed if it is large

       <#break>

  <#default>

      This will be processed if it is neither

  </#switch>

用例:


3) list, break

<#listsequence as item>

  ...x

     <#if item="spring"><#break></#if>...

</#list>

关键字item_index:是list当前值的下标item_has_next:判断list是否还有值 

例子:





mmer, 4. autumn  


4) include
¡语法:
<#include filename>

用例:







在这里会存在一个问题,如果有两个被引用的文件,他们都有相同的变量名那么如果此时引用了具有相同变量名的文件他们其中一个会被替换;





这里可以发现12被100 覆盖了,所以为了解决这类问题就要用到import



5) Import
语法:
<#import path as 别名>






6) assign
生成变量,并且给变量赋值
<#assign 变量名=值>



7) macro (宏)相当于java中的方法 也就是说把需要重复执行的代码放入其中 然后进行调用即可


8特殊字符的转译


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值