0
我有一個Spring + Hibernate的應用程序,我讓本機查詢我的DAO層。查詢如下所示JSTL NumberFormatException的
select name, amount from myTable where id=:id
很明顯,所選擇的領域是不同的數據類型(字符串,數字)。
在JSP我想,所以我用foreach loop
要經過的每條記錄在返回set打印在表格中返回的結果。
我希望把括號之間的負數,所以我用下面的代碼
<c:forEach var="item" items="${resultSet}">
<tr>
<c:forEach var="v" items="${item}" varStatus="st">
<td>
<c:choose>
<c:when test="${v != null}">
<c:choose>
<c:when test="${v<0}">
<c:out value="(${v})"></c:out>
</c:when>
<c:otherwise>
<c:out value="${v}"></c:out>
</c:otherwise>
</c:choose>
</c:when>
<c:otherwise>
<c:out value="-"></c:out>
</c:otherwise>
</c:choose>
</td>
</c:forEach>
</tr>
</c:forEach>
,查詢中的第一個項目是字符串,該代碼觸發NumberFormateException。
我知道這個問題的兩個解決方案。第一種是將大括號放在SQL查詢中,但由於應用程序包含許多查詢,因此我無法使用此解決方案,並且修改所有查詢需要很長時間。
第二個解決方案是使用使用ResultTransformer和返回的數據轉換成一個對象,但是這並不適合以前同樣的原因。
有任何解決方法來解決這個問題?
這是我做了什麼請在我的問題的代碼 – 2013-03-19 12:38:59
檢查的第一行$ {V <0}卸下襬臂的「」。 – 2013-03-19 12:46:26