![](/img/trans.png)
[英]How to keep template whitespace (tabs) formatting using Apache Velocity 1.7?
[英]Formatting a BigDecimal in Apache Velocity
在我的速度模板中,我一直在使用Velocity NumberTool将数字变量格式化为货币。 其中大多数都是原始的double,因此可以使用此工具正常工作。
但是,有些是BigDecimal类型的,它们似乎根本没有格式化。 它只会在渲染时按原样显示表达式:
$global.numberTool.currency($someBigDecimalVariable)
是否有一种方便的方法来将Velocity格式的BigDecimal设置为货币? 有哪些选择?
由于可以将任何对象放入Velocity上下文中,因此最简单的方法是将自己的DecimalFormat
对象放入上下文中,然后在模板中调用其format()
方法。
当然,这不是一个很好的解决方案,但是您可以对其进行改进以使其更通用。
您可以在Velocity中使用JSTL吗? 我使用fmt JSTL标签将BigDecimals显示为一种货币,如下所示:
<fmt:formatNumber value="${myBigDecimalValue}" type="currency" currencySymbol="€" currencyCode="EUR" minFractionDigits="2" maxFractionDigits="2"/>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.