Freemarker的Interpolation

Interpolation 有两种类型:

Ø 通用Interpolation${expr}

Ø 数字Interpolation#{expr}#{expr; format}

 

1、通用 Interpolation

(1) 插入字符串值直接输出表达式结果

${book.name?if_exists }         //用于判断如果存在,就输出这个值 

${book.name?default(‘xxx’)}     //默认值xxx 

${book.name!"xxx"}           //默认值xxx 

(2) 插入数字值根据缺省格式(由#setting 指令设置缺省格式)将表达式结果转换成文本输出;

                                可以使用内建函数 string 格式化单个Interpolation

<#setting number_format="currency"/>   <#-- 设置缺省格式。即string.currency -->

<#assign answer=42/>

${answer}                $42.00

${answer?string}          $42.00       <#-- the same as ${answer} -->

${answer?string.number}   42

${answer?string.currency}  $42.00

${answer?string.percent}   4,200%

(3) 插入日期值根据缺省格式(也是由#setting 指令设置)将表达式结果转换成文本输出;

                                可以使用内建函数 string 格式化单个Interpolation

下面是一个使用格式模式的例子:

${lastUpdated?string("yyyy-MM-dd HH:mm:ss zzzz")}

${lastUpdated?string("EEE, MMM d, ''yy")}

${lastUpdated?string("EEEE, MMMM dd, yyyy, hh:mm:ss a '('zzz')'")}

输出的结果类似下面的格式:

2003-04-08 21:24:44 Pacific Daylight Time

Tue, Apr 8, '03

Tuesday, April 08, 2003, 09:24:44 PM (PDT)

(4) 插入布尔值:根据缺省格式(由#setting 指令设置)将表达式结果转换成文本输出;

                                可以使用内建函数string格式化单个Interpolation,下面是一个例子:

<#assign foo=true/>

${foo?string("yes", "no")}

输出结果是:yes

 

2、数字 Interpolation 

#{expr; format}形式用来格式化数字,format 可以是:

mX小数部分最小X

MX小数部分最大X

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值