我的模型包含属性:
public BigDecimal amount
当我返回它以查看它的值被设置为55.在JSP页面中我写了数量:
`${amount}`
结果是正确的。但我希望在显示之前将其分为100。但我想只在jsp上做。我现在写的是:
${amount/100}
。但结果不正确。它围绕它,结果 1 。怎么做才能返回 0.55
答案 0 :(得分:0)
试试这个JSTL
<fmt:formatNumber pattern="2" value="${amount/100}" var="cellData"/>
${cellData}
答案 1 :(得分:0)
一种方法是使用两个属性
m.addAttribute("amount", new BigDecimal("55"));
m.addAttribute("divisor", new BigDecimal("100"));
然后你这样做
${amount.divide(divisor)}
另一种方法是使用扩展BigDecimal
的类,比如说MyBigDecimal
并定义一个进行除法的方法。
public class MyBigDecimal extends BigDecimal {
public MyBigDecimal(String val) {
super(val);
}
public String print() {
return divide(new BigDecimal("100")).toPlainString();
}
}
然后你这样做。
m.addAttribute("amount", new MyBigDecimal("55"));
${amount.print()}
您也可以使用自定义JSTL函数,但我不完全理解它。