5

可能重复:
评估空或空 JSTL c 标记

我正在将 scriptlet 重构为 JSTL 和 EL,我想知道如何在 JSTL / EL 中编写以下内容:

if(sokandeList != null && sokandeList.size() > 0) { %>
...

我不知道如何测试 null 并且 AFAIK EL 只能在这种情况下访问 getter,所以我必须向 sokandeList 类添加一个方法 getSize() 。正确的?JSTL / EL 表达式应该是什么样的?谢谢你的帮助

4

2 回答 2

18

使用empty关键字,它检查空值和空值。

<c:if test="${not empty sokandeList}">
    ...
</c:if>

请注意,当您的意图是使用 then 遍历列表<c:forEach>时,最好知道当提供items的是empty. 如果<c:forEach>直接被这个检查包围,那么这个检查完全是多余的。

也可以看看:

于 2012-05-24T13:08:52.133 回答
3

这是一种方法:

<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %>
<c:if test="${fn:length(sokandeList) > 0}">

我认为您也可以使用它:

<c:if test="${!empty myObject.sokandeList}">

很棒的 JSTL 备忘单

于 2012-05-24T13:07:22.107 回答