java spring jsp模型属性

时间:2014-06-13 10:05:25

标签: java spring spring-mvc jstl

我的模型包含属性:

public BigDecimal amount

当我返回它以查看它的值被设置为55.在JSP页面中我写了数量:

`${amount}`

结果是正确的。但我希望在显示之前将其分为100。但我想只在jsp上做。我现在写的是:

${amount/100}。但结果不正确。它围绕它,结果 1 。怎么做才能返回 0.55

2 个答案:

答案 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函数,但我不完全理解它。