Freemarker基础语法

1.定义:freemarker是一个用Java开发的模板引擎,模板+数据模型=输出,文件后缀 .ftl

2.freemarker中使用list指令遍历数据模型中的数据:

<#list apps as app>

${app_index + 1}

${app.name}

${app.age}

</#list>

注意: _index:得到循环的下标,使用方法是在stu后边加"_index",它的值是从0开始

3.freemarker中map的遍历有三种方式

a. ${app['stu1'].name}

b. ${app.stu1.name}

c. <#list app?keys as k>

${k_index + 1} ${app[k].name}

</#list>

4.freemarker的if指令

<#if str.name =='小明'></#if>

5.freemarker的空值处理

a、判断某变量是否存在使用 “??” 用法为:variable??,如果该变量存在,返回true,否则返回false

例:为防止stus为空报错可以加上判断如下:

<#if stus??>

<#list stus as stu>

.....

.</#list>

</#if>

b、缺失变量默认值使用 “!” 使用!要以指定一个默认值,当变量为空时显示默认值。

例: ${name!''}表示如果name为空显示空字符串

如果是嵌套对象则建议使用()括起来。

例: ${(stu.bestFriend.name)!''}表示,如果stu或bestFriend或name为空默认显示空字符串。

6.freemarker的内建函数

a.内建函数的语法格式:变量 + ?+ 函数名称

例:${集合名?size}

b.日期格式化

显示年月日: ${today?date}

显示时分秒:${today?time}

显示日期+时间:${today?datetime}

自定义格式化: ${today?string("yyyy年MM月")}

c.内建函数c

map.put("point", 102920122); point是数字型,使用${point}会显示这个数字的值,不并每三

位使用逗号分隔。 如果不想显示为每三位分隔的数字,可以使用c函数将数字型转成字符串

输出 ,例如:${point?c}

d.json字符串转换成对象

例子:<#assign text="{'bank':'工商银行','account':'10101920201920212'}" />

<#assign data=text?eval /> 开户行:${data.bank} 账号:${data.account}

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值