文章标签 ‘freemarker’

freemarker 数字格式化

2012年3月8日 没有评论

freemarker数字格式化可以在两个地方设置,一个是全局的,即在freemarker.properties文件中设置number_format,还有一个是使用string指令来控制数据的输出格式。例如:

${num?string('0.00')}
如果小数点后不足两位,用 0 代替

${num?string('#.##')}
如果小数点后多余两位,就只保留两位,否则输出实际值
输出为:1239765.46

${num?string(',###.00')}
输出为:1,239,765.46
整数部分每三位用 , 分割,并且保证小数点后保留两位,不足用 0 代替

${num?string(',###.##')}
输出为:1,239,765.46
整数部分每三位用 , 分割,并且小数点后多余两位就只保留两位,不足两位就取实际位数,可以不不包含小数点

${num?string('000.00')}
输出为:012.70
整数部分如果不足三位(000),前面用0补齐,否则取实际的整数位

${num?string('###.00')}
等价于
${num?string('#.00')}
输出为:12.70
整数取实际的位数

关于string指令的更多用法,可以访问官方文档:http://freemarker.sourceforge.net/docs/ref_builtins_number.html#ref_builtin_string_for_number

freemarker的list指令中隐藏的变量

2011年12月17日 没有评论

freemarker的list指令遍历一个list集合中的每一个元素,例如:

<#list userLists as user>
	${user.name}
	...
</#list>

其实list指令还隐含了两个变量,

1、item_index 该变量将返回元素在集合里的索引值,从0开始计数;

2、item_has_next 该变量是boolean型,false表明该元素是Sequences里的最后一个元素。

上述例子中如果需要把序号打印出来,使用${user_index}即可,同时如果想判断是否是最后一个元素,使用 user_has_next就行了。

freemarker如何判断对象类型

2011年12月6日 没有评论

在freemarker中似乎没有instanceOf这个方法,有时候页面上需要来判断变量的类型,可以使用变通的方法,如下

    <#if myVar.class.simpleName == "Object Type">
        ...
    </#if>

无觅相关文章插件,快速提升流量