freemarker使用记录

  • 输入数字类型的属性有逗号,如1,230

在使用FreeMarker进行数据展示的时候,如果数据为数字,则显示出来的数据是用科学计数法显示的。
如:1000显示为1,000。
解决本问题的方法只需要来原来的${id}改成${id?c}即可;

  • 判断空值

<#if member?? >

<a href="xxx">退出 </a><br/>

<#else>

xxx

</#if>

??代表如果为空

 

引用的对象为空,那么表达式一定会报错,

 

<#if info?exists && info?has_content>改成这样即可。

info?has_content判断该变量是否不为null并且不为empty。

实际用?has_content就可以满足要求了。

  • 带小数的值小数点后零丢失

Interpolation有两种类型:

  1. 通用Interpolation:${expr}
  1. 数字Interpolation:#{expr}或#{expr; format}

注意:Interpolation只能用于文本部分

  • 通用Interpolation

插入字符串值:直接输出表达式结果

插入数字值:根据缺省格式(由#setting指令设置)将表达式结果转换成文本输出;可以使用内建函数string格式化单个Interpolation,下面是一个例子:

<#setting number_format="currency"/>
<#assign answer=42/>
${answer}
${answer?string}  <#-- the same as ${answer} -->
${answer?string.number}
${answer?string.currency}
${answer?string.percent} 

输出结果是:

$42.00
$42.00
42
$42.00
4,200%
posted @ 2012-08-07 17:40  飛天大盜  阅读(473)  评论(0编辑  收藏  举报