Проверьте размер коллекции с помощью JSTL - PullRequest
227 голосов
/ 12 мая 2009

Как проверить размер коллекции с помощью JSTL?

Что-то вроде:

<c:if test="${companies.size() > 0}">

</c:if>

Ответы [ 4 ]

416 голосов
/ 12 мая 2009

От: http://java.sun.com/products/jsp/jstl/1.1/docs/tlddocs/fn/tld-summary.html

длина (java.lang.Object) - Возвращает количество элементов в коллекции или количество символов в строке.

поместите это в верхнюю часть страницы, чтобы разрешить пространство имен fn:

 <%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>

и используйте это на своей странице jsp:

<p>The length of the companies collection is : ${fn:length(companies)}</p>

Итак, чтобы проверить с длиной коллекции:

<c:if test="${fn:length(companies) gt 0}">
   <p>It is greater than 0</p>
</c:if>

Обратите внимание, что использование gt вместо > в качестве > недопустимо в тегах jsp / jsf.

30 голосов
/ 12 июня 2014

Как предлагали @Joel и @Mark Chorley в предыдущих комментариях:

${empty companies}

Проверяет наличие пустых и пустых списков / коллекций / массивов. Это не дает вам длину, но это удовлетворяет примеру в ОП. Если вам это сойдет с рук, это просто чище, чем импортировать библиотеку тегов и ее жесткий синтаксис, такой как gt.

11 голосов
/ 29 апреля 2012

Вы можете использовать как это

${fn:length(numList)}
0 голосов
/ 21 марта 2014

используйте ${fn:length(companies) > 0}, чтобы проверить размер. Это возвращает логическое значение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...