初步接触Freemarker

初步接触Freemarker

1、Freemarker是什么

2、了解Freemarker

1、Freemarker需要一个模板和一个数据模型来生成输出:模板+数据模型=输出
2、${…}:Freemarker将在输出中用大括号内表达式的实际值替换它。——-插值
3、指令用#开头
4、模板是用FTL语言(用于Freemarker模板语言),FTL区分大小写

3、常用指令:

1、if-else指令
<#--if指令用法-->
<#if A.price < B.price>
    A今天更优惠
<#else>
    B今天更优惠
</#if>
2、list指令
    <#-- list指令用法 -->
    <#list sequence as loopVariable>
        repeatThis
    </#list>

示例一:

<table border=1>
    <#list animals as animal>
        <tr>
            <td>
                ${animal.name}
            </td>
        </tr>
    </#list>
</table>

示例二(list, items[列表条目], sep[分隔符], else)

<#list misc.fruits>
    <p>fruits:</p>
    <ul>
        <#items as fruit>
            <li>
             ${fruit} <#sep>and</#sep>
            </li>
        </#items>
    </ul>
<#else>
    <p>我们没有水果了</p>
</#list>
3、include指令(将另一个文件引入模板)
<#include filename> 
    or 
<#include filename options> 
options包含两个属性:

注意:
encoding=”GBK” 编码格式
parse=true 是否作为FTL语法解析,默认是true. false就是以文本方式引入
注意在ftl文件里布尔值都是直接赋值的如parse=true,而不是parse=”true”

<#include "/aaa.html"  encoding="UTF-8">
4、遗失参数方式

如果省略默认值,那么它将是空字符串和空序列,同时是空的散列

<#--给一个默认值,user为空时启用-->
<h1>Hello, ${user!"visitor"}!</h1>
<#if user??>
    <h1>hello, ${user}!</h1>
</#if>
5、模板赋值
<#assign s="abc">
${s}
<#--会输出abc-->
6、内置插件

如:testString=”Tom&Jerry”

${testString?upper_case} -------------(会输出TOM&JERRY)
${lastUpdated?string("yyyy-MM-dd HH:mm:ss")}
7、方法调用
${repeat("Foo", 3)} ------------------FooFooFoo
${cur_time?date}----------------------2018-3-28
${cur_time?datetime}------------------2018-3-28 16:24:18
${cur_time?time}----------------------16:25:18
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值