wake-up-neo.net

Überprüfen Sie eine Sammlungsgröße mit JSTL

Wie kann ich die Größe einer Sammlung mit JSTL überprüfen?

So etwas wie:

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

</c:if>
229
Sergio del Amo

Von: http://Java.Sun.com/products/jsp/jstl/1.1/docs/tlddocs/fn/tld-summary.html

length (Java.lang.Object) - Gibt die Anzahl der Elemente in einer Sammlung oder die Anzahl der Zeichen in einer Zeichenfolge zurück.

fügen Sie dies oben auf der Seite ein, um den fn-Namespace zuzulassen:

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

und verwende dies auf deiner jsp Seite:

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

So testen Sie mit Länge einer Sammlung:

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

Beachten Sie die Verwendung von gt anstelle von > wie > ist in jsp/jsf-Tags nicht zulässig.

418
Martlark

Wie von @Joel und @Mark Chorley in früheren Kommentaren vorgeschlagen:

${empty companies}

Hiermit wird nach leeren und leeren Listen/Sammlungen/Arrays gesucht. Es gibt Ihnen nicht die Länge, aber es erfüllt das Beispiel im OP. Wenn Sie damit durchkommen können, ist dies nur sauberer als das Importieren einer Tag-Bibliothek und ihrer knusprigen Syntax wie gt.

30
Josh

Sie können so verwenden

${fn:length(numList)}
11
user1364215