0

我很困惑是否可以将从存储过程中获得的十进制值相加,并将循环中的所有小数加在一起作为一个值。

例如:

<c:forEach var="row" items="${ aStoredProcedure }">
<fmt:formatNumber value="${ row.decimalNumber }"pattern="#,##0.00"/>
<br>
</c:forEach>

这会将每行的每个 decimalNumber 的值以通用货币的形式打印到它们自己的行上。我需要一种方法来将所有这些十进制数字加在一起,我只需要它们的最终总和。这可以在JSP中完成吗?任何帮助表示赞赏。

4

1 回答 1

1

可以在 JSP 中按如下方式完成,

<c:set var="total" value="0.0" />
<c:forEach items="${aStoredProcedure}" var="row">
    <c:set var="total" value="${total + row.decimalNumber}" />
</c:forEach>
<fmt:formatNumber value="${total}" pattern="#,##0.00" />

但这根本不是推荐的方式。这里<c:forEach>不输出任何东西,但基本上执行业务逻辑。业务逻辑属于前端控制器,通常是一个servlet。在其中,您可以自由地编写 Java 代码来准确准备 JSP(视图)所需的数据(模型)。

于 2013-06-24T13:02:45.417 回答