关于BigDecimal类型在jsp页面中进行除法运算问题

出自:http://blog.csdn.net/u011910290/article/details/52935337

问题描述:

在项目编写过程中,发现BigDecimal在jsp中进行除法运算时,会有如下问题: 
假设页面中存在一个BigDecimal payment.unPayAmount = new BigDecimal(1015228)。由于数据库保存的金额是以分为单位的,所以显示在页面时,则应该需要除以100。所以代码为:

<fmt:formatNumber value="${payment.unPayAmount/100}"type="currency" /> 

得出的值却是10,152.00。而我们所期望的值是10,152.28。

解决方法:

先将payment.unPayAmount由BigDecimal类型转为String类型

<fmt:parseNumber value="${payment.unPayAmount}" var="pageUnPayAmount" />,将用String类型的值去formatNumber。 
<fmt:formatNumber value="${pageUnPayAmount/100}"type="currency" />,则可以得到我们所期望的值10,152.28。

 

posted @ 2017-12-01 17:09  路途寻码人  阅读(1624)  评论(0编辑  收藏  举报