一、freemarker在解析数据格式的时候,自动默认将数字按3为分割(1,000),这会给开发带来一些问题,比如通过URL传参,就会报错
${id}=1,000
解决的办法:
1、使用内建函数c,比如:${id?c},可以避免数字被格式化。缺点:在所有需要传参的地方都要处理。
全局的处理方法
2、在freemarker配置文件freemarker.properties加number_format=#或者number_format=0;
这种解决方式我试了,但是没效果,不知哪里的问题。
3、在模板中直接加<#setting number_format="#">或者<#setting number_format="0">
可以把这段代码加入到公共页面中。
二、freemarker对保留小数点的处理
${x?string("0.##")}
假设strnum是一个数字,则可以这样写${strnum?string(",##0.0#")},例如${123456.123456?string(",##0.0#")}值为123,456.12