我有来自数据库的ID列表,并在请求中将它们传递给servlet,但我无法将它们与任何数字进行比较。
我想也许我必须将它们转换为整数类型:
<c:forEach items="${subjec.id}" var="x">
${x}
</c:forEach>
<c:forEach items="${listPage}" var = "list">
${list.id}
<c:choose>
<c:when test="${list.id} == 1">
</c:when>
</c:choose>
</c:forEach>
<c:if test="${subject1.id == 1}">
${subject1.id}
</c:if>
但是,我无法根据Integer格式进行测试。这种情况的任何建议吗?
答案 0 :(得分:6)
<c:when test="${list.id} == 1">
这是错误的。您需要将整个表达式放在${}
。
如果getId()
返回Number
(整数,长整数等),请使用以下内容:
<c:when test="${list.id == 1}">
或者,如果它返回String
(顺便说一下是不自然的),请使用以下内容:
<c:when test="${list.id == '1'}">
或者,如果它返回boolean
(仅作为示例),则使用以下内容:
<c:when test="${list.id}">
答案 1 :(得分:2)
应该是<c:when test="${list.id == '1'}">
如果使用<c:when test='${list.id == "1"}'>
将抛出异常
答案 2 :(得分:-1)
试
<c:when test='${list.id == "1"}'>